I recently posted to Github “CKGenericTableViews”, a library (and accompanying example iOS app) that I’m using to speed up the development of an iOS application that I’m working on with my friend Brandon. The example app demonstrates the different kinds of table cells that can be quickly thrown together using the classes included. This video illustrates what those are just in case you don’t have handy a Mac, Xcode, the iOS SDK, and a working version of Git.

The classes are as follows:

  • CKActionRowCellController: a basic cell that lets you register an event to be fired when pressed. I currently use this for bringing up action sheets, photo browsers, etc.
  • CKChoiceRowCellController: a cell with placeholder text that presents a list of options, then shows the option chosen (if not canceled out of). 
  • CKLinkRowCellController: a “link” to drill down into another view. Can be used to quickly build up a heirarchy of tableviews. 
  • CKSwitchRowCellController: an ON/OFF switch as seen in many preference screens.
  • CKTextRowCellController: a cell with an embedded UITextField for entering text. Supports placeholder text.
  • CKExclusiveSelectRowCellController: used to make up one row of a group of mutually exclusive items. The most recently pressed item gets a checkmark next to it. Think of the ringtone selection in Settings.app. An instance of CKExclusiveSelectModel is shared by all cells that are part of the selection group. 

I’m looking forward to sharing more about the forthcoming app as it comes together. I’ve got a lot of the major functionality in place and I’m just working on one last feature and integrating art from Brandon and then I’ll be putting together a beta version for testing.