Я использую шаблон для утилиты приложения. В FlipSideViewController я добавил IBOutlet для UINavigationController, navController. В коде я просто добавил navController. RootViewController отлично загружается:
navController.viewControllers = [[NSArray arrayWithObject:rootViewController] retain];
[self.view addSubview:navController.view];
Я изменил цвет navController просто отлично:
navController.navigationBar.tintColor = [UIColor colorWithRed:0.6 green:0.75 blue:0.6 alpha:1.0];
navController.navigationBar.translucent = NO;
Я делаю кнопку (примечание: «готово» относится к IBAction, который отклоняет modalviewcontroller):
UIBarButtonItem *backButton = [[UIBarButtonItem alloc] initWithTitle:@"TEST" style:UIBarButtonItemStyleDone target:self action:@selector(done:)];
Я делаю navItem, используя эту кнопку:
UINavigationItem *backNavItem = [[UINavigationItem alloc] initWithTitle:@"TESTTEST"];
[backNavItem setRightBarButtonItem:backButton animated:YES];
Я пытаюсь добавить эту кнопку:
[navController.navigationBar pushNavigationItem:backNavItem animated:YES];
Этот код не работает с треском. Я, видимо, не могу добавить кнопки в navController, потому что:
*** Завершение приложения из-за необработанного исключения
'NSInternalInconsistencyException',
причина: «Не могу позвонить
pushNavigationItem: animated: напрямую
на UINavigationBar под управлением
контроллер.
Нужно ли создавать отдельную панель UINavigationBar, которая каким-либо образом связана с моим navController? Я пытался идти по этому пути, но безрезультатно.