CADPage For iOS and iOS 8
Status: Available In The App Store
2014-09-29 15:48:00 -0500

As I'm sure you're all well aware, Apple recently pushed out a shiny new update to its mobile operating system, iOS. If you've already upgraded to iOS 8, and you're reading this blog, you're probably also well aware that it broke CADPage For iOS, specifically that, when you try and tap on the cell (or row in the list) for a page to see the details, it does absolutely nothing.

I've submitted an update with a fix, and was granted an "expedited review", so hopefully it will make it through the review process quickly, and appear in the App Store soon. If you're curious what happened, read on, and I'll do my best to explain it.

What Happened

Somewhere in the switch from iOS 7.1 to iOS 8, the way I was displaying new screens from a cell quit working. In the end, it actually only took a single line of code to fix. Transitions from one view to another in iOS are often handled by something called a segue (pronounced like "segway"...that took me a while) and, prior to iOS 8, creating a segue was as easy as a right-click (or cmd-click) on the button, cell, or view you wanted to trigger the transition, and then dragging a line to the view you wanted to transition to. Give that segue a unique name, and you're done, all done without actually writing a single line of code. It seems that now, when it comes to presenting a new view from a segue presented by a cell in iOS 8, in addition to creating the segue, you now have to explicitly tell the tableview to trigger it by calling its tableView:didSelectRowAtIndexPath: delegate method.

For me, the most confusing part is that I cannot find any documentation explicitly stating you cannot use a "drag and drop" style segue from a cell. Since cell objects inherit from UIView, where this is possible, I just assumed it was an ok thing to do.

The good thing is, the problem has been fixed, and the app is waiting to be reviewed. I'll post a status update at the top if anything changes.