Добавление BarButtons к UINavigationBar после представления контроллера модального представления - PullRequest
2 голосов
/ 03 апреля 2010

Я использую шаблон для утилиты приложения. В 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? Я пытался идти по этому пути, но безрезультатно.

1 Ответ

2 голосов
/ 03 апреля 2010

Я проверил "NavBar" здесь :

Отличное понимание того, как добавить кнопки. Вы должны добавить кнопки из отображаемого корректного ViewController.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...