Кроме того, если ваше представление находится в стеке контроллера Nav, но вы (авто) выпустили его там, где его не должно быть, self.navigationController может быть равен нулю. Doh!
г: Создайте новый UIViewController:
- Xcode -> Новый файл ... -> Сенсорный класс Cocoa -> UIViewController
- Имя: MyViewController
2. Шаг: Перетащите «Контроллер навигации» (UINavigationController) из библиотеки в MyViewController.xib.
3.Step: Я уверен, что мне нужно что-то сделать, чтобы правильно подключить навигационный контроллер, не так ли?
4.Step: Попробуйте запустить новый View Controller как модальное диалоговое окно:
MyViewController *myViewController = [[MyViewController alloc] initWithNibName:@"MyViewController" bundle:nil];
NSLog(@"navContr: %@", myViewController.navigationController);
[self.navigationController presentModalViewController: myViewController animated:YES];
Результат: "navContr: nil"
5.Step: Вы можете увидеть новое модальное представление (MyViewController), но там нет NavigationController и UINavigationBar.
Спасибо большое за помощь!
ОБНОВЛЕНИЕ 1:
6.Step: Я установил новый UIViewController (ViewNavi2) как «Root View Controller»:
7.Step: Я определяюIBOutlet UINavigationController *navigationController
в классе MyViewController и настройте xib: Navigation Controller -> Подключения -> Ссылки на розетки
Но мой навигационный контроллер все еще ноль :-(
MyViewController *myViewController = [[MyViewController alloc] initWithNibName:@"MyViewController" bundle:nil];
NSLog(@"navContr: %@", myViewController.navigationController);
// -> "navContr: nil"