Is it possible to add a UINavigationController
to a view application that inherits from UIViewController
and not UITableViewController
? How is it done?
The root view controller is simply the view controller that sits at the bottom of the navigation stack. You can access the navigation controller's array of view controllers through its viewControllers property. To access the root view controller, we ask for the first item of the array of view controllers.
Show activity on this post. From the outline view, make sure your Table View Controller is selected. Then go to the Editor menu, and click on the Embed In submenu, and choose Navigation Controller and voila. You have your navigation controller pointing to your tableview controller with a relationship built in.
Yes, you can have Navigation controllers in any view based application, whether at the Root level (like when you create the Navigation-based template in Xcode) or with a TabBar root, or with any Root.
One example, presenting a modal view including navigation (used in my app to display a series of forms):
UIViewController *control = [[MyViewController alloc] initWithNibName: @"MyViewController" bundle: nil];
UINavigationController *navControl = [[UINavigationController alloc] initWithRootViewController: control];
[self presentModalViewController: navControl animated: YES];
[control release];
In another example, if you want to have it at the root level, but didn't create the application with the Navigation template, in the AppDelegate's didFinishLaunching(...):
UINavigationController *navControl = [[UINavigationController alloc] initWithRootViewController: control];
[window setRootViewController: navControl];
[navControl release];
You can also set it in Interface Builder, by setting up the class of the View controller you use (UIViewController replaced by UINavigationController).
I hope this answers your question (sorry about the previous discussion).
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With