[iPhone] Which way do you instantiate Views?

Discussion in 'iOS Programming' started by Enuratique, Jun 24, 2008.

  1. Enuratique macrumors 6502

    Apr 28, 2008
    I'd like to get a feel for how people here build up their Views. All the samples I am using as a basis override the loadView method and build by hand their views... This seems tedious, especially with the nice Interface Builder app. So, to give some background - I used the View based application template when first creating the project. Then, in Interface Builder, I added a SearchBar and a UITableView object to my View. Then I defined two IBOutlets for each of the elements (SearchBar and UITableView) so that I could access them in the ViewController.m file. Finally, with the IBOutlets defined, I could Ctrl+Drag from each of my defined outlets in the View's attributes inspector to each of the UI elements. This saved me the work of having to manually allocate the View, and set the window's view with it. The downside is now I can't figure out how to invoke the ViewController's init method I have written for it. All I want to do in the ViewController's init is alloc/init my custom DataSource so that in my viewDidLoad override, I can set the UITableView's dataSource to this instance. Now, I suppose I can just allocate and instantiate it right there in the viewDidLoad method, but there's got to be a cleaner way, right?

    How would you go about this? Thanks,

  2. lucasgladding macrumors 6502

    Feb 16, 2007
    Waterloo, Ontario
    awakeFromNib is likely what you are looking for. Check the class documentation for NSObject for the method.

Share This Page