Our DNA is written in Swift

DTCoreText 1.6.16

This is a big update for DTCoreText, maybe even deserving of a minor version bump. It aggregates fixes and enhancements contributed over more than 4 months. This kind of proves that DTCoreText is alive and getting better all the time.

Read more

DTFoundation 1.7.6

This maintenance update fixes a few bugs in the ASN.1 parser and adds support for modules.

Read more

Philosophy versus App Store Rejection

In May 2015, philosopher William Hooper, contracted me to recreate a notes app that should pay tribute to the iOS 6 style. He saw a market for such an app, because he – and many other users – didn’t like the flat style introduced in iOS 7.

I built the 1.0 version in a couple of weeks and enjoyed the challenge of skinning the UI to give it this retro style. Several thousand people downloaded the free app, and I began to believe William that a certain audience found it quite appealing.

Shortly afterwards we added additional paper styles, additional fonts and a different header bar style for users to select and released it as version 1.1. Unfortunately I had made a stupid programming mistake that would cause the notes database to be deleted from time to time. We removed the 1.1.0 version from sale while working on a fix.

When we submitted the 1.1.1 version containing the data loss hotfix version, the troubles began: Apple started to reject the app. After a month back and forth with the app review team, William published the following on his philosophy blog and asked me to share it with my readers.

Read more

DTRichTextEditor Goes Open Source

Development on DTRichTextEditor had started in 2011, several years before Apple revamped the internals of UITextView to TextKit. I based it on DTCoreText – which had been open source from the start – and added a custom magnifying glass to mimic the one provided by the system. As of today, I am making it Open Source.

Read more

Proportional Layout with Swift

Octavio asks:

I have an Autolayout challenge for you: I have a Square view which contains some images, labels, etc. We need that view to be full width on all iPhone screen sizes & resolutions.

The view is built at 320 x 320 (or @1x) and it is expected to scale proportionally for each and every other resolution and screen size. Basically, the view and all its elements should scale together, in unison, as if it was an image.

Thanks, Octavio, for a great question/challenge!

My first reaction was: “this is a problem I had solved previously!” But to make it a bit more interesting this time I am doing it with auto layout and Swift. We might learn something in the process.

Read more

Radar: ABUnknownPersionViewController

Apple is introducing a new contacts framework in iOS 9. The do so very aggressively to even replace view controllers from AddressBookUI.framework with their new implementations. Unfortunately not without problems.

Normally I am prefer to keep quiet about bugs in iOS beta versions, but this one affects apps public on the app store which are using this view controller and therefore I felt it necessary to warn my iOS developer colleagues about it. This is the crash I was alluding to on iOS Today.

rdar://21357089 – ABUnknownPersionViewController_modern overreleases CNContactViewController
rdar://21438771 – ABUnknownPersionViewController Regression

Read more

Core Image Barcode Erratum

Barcodes with iOSSince iOS 7, Core Image contains several generators for 2D barcodes. While I was writing my book Barcodes and iOS, only the CIQRCodeGenerator was documented. Apple’s standard policy is that classes which are not documented are to be considered off limites. Seeking clarification, I emailed an Apple evangelist and he confirmed that this is still the case.

So I mentioned the three other – undocumented – Core Image filters in the chapter about barcode generation, but cautioned the reader about their usage in app store apps: CIAztecCodeGenerator, CIPDF417BarcodeGenerator and CICode128BarcodeGenerator. At WWDC 2015, I learned that my assumption as well as the evangelist’s confirmation were incorrect.

Read more

iOS Today

Three years ago, I last visited the TWiT Studio in Petaluma, California. Located one hour by car north of San Francisco, the “TWiT Brockhouse” is well worth visiting if you are a fan of the shows that Leo Laporte and his team are producing there. I was guest on their show following the WWDC week.

Read more

WWDC 2015 Review

The 26th annual Apple Worldwide Developer’s Conference was held June 8th through 12th in the Moscone West conference center. It was my fourth attendance to the show, with only 2014 being a break in my streak.

Read more

The WWDC Keynotes

Don’t believe what the blogs are telling you. What they have witnessed – and live-blogged about – was not the entire story. They only got to see one third of the whole story.

Read more