Добавление заголовка в NavigationBar - PullRequest
2 голосов
/ 21 мая 2010

У меня есть два разных контроллера представления, добавленных к массиву контроллеров представления TabBarController, и этот TabBarController добавлен к контроллеру навигации.

Теперь я хочу показать разные заголовки для разных представлений на панели вкладок на навигационном контроллере.

Любая помощь будет оценена.

Ответы [ 2 ]

2 голосов
/ 21 мая 2010

заголовок на панели навигации берется из элемента навигации из его контроллера вида сверху. Похоже, что его контроллер вида сверху, в вашем случае, является контроллером панели вкладок, поэтому вы захотите установить заголовок контроллера панели вкладок при каждом изменении панели вкладок.

В частности, вам нужно присвоить UITabBarControllerDelegate свойству delegate контроллера панели вкладок и реализовать следующий метод:

- (void)tabBarController:(UITabBarController *)tabBarController didSelectViewController:(UIViewController *)viewController {
    tabBarController.title = viewController.title;
}

Строка эквивалентна

    tabBarController.navigationItem.title = viewController.navigationItem.title;

Так что вы можете использовать любой из них. В любом случае установите заголовки отдельных контроллеров представления вкладок на любой нужный вам заголовок, и затем заголовок изменится при изменении вкладок.

0 голосов
/ 22 марта 2012

Предположим, у вас есть три вида контроллеров, имеющих три разных представления, и вы хотите изменить заголовок панели навигации, когда вы нажимаете secondViewcontroller, и то же самое, когда вы являетесь третьим видом контроллера:

viewController2.navigationItem.title = @"Select Template";
viewController3.navigationItem.title = @"Template";

Таким образом, мы можем изменить заголовок панели навигации, нажимая на контроллер следующего представления.

Надеюсь, это поможет.

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