I kept wondering whether you’re supposed to call the parent init method before or after your code and I found a basic answer:
// Put values into your instance variables and constants
// Other initialization code, such as calling methods, goes here
I don’t think you’re really supposed to do this since the option is grayed out in Xcode when you select Editor -> Embed in Navigation Controller, but a hacky way to get around it is to control-drag from a free-standing Navigation Controller to the Tab Bar Controller and select “root view controller.”
Control-click from the Tab Bar Controller to the controller you want to be the new tab and select “view controllers.”
One reason the Archive button may be grayed out in Xcode is that you need to be connected to a device, and choose that device.
See here: http://stackoverflow.com/questions/16050640/xcode-product-archive-disabled/18791703#18791703