What nobre said is true. except you can still use initWithNibName as an initializer. Just pass in nil for the name and nil for the bundle, and the method acts essentially the same as regular init. Implement the loadView method in your view controller. And in this implementation, set self.view. Whatever you set self.view to in the loadView method will be the root view of your viewcontroller. You can access this view in other classes by using something similar to:
Code:
[window addSubview: myViewController.view]
When the delegate requests the view controller's view property, If the property is still nil, the loadView method will be called automatically.