Мое приложение имеет 3 элемента панели вкладок, каждый из которых отображается на отдельный контроллер представления. Моя проблема в том, что первым контроллером является контроллер UINavigation, и он сверлит вниз примерно на 3 уровня. У меня нет проблем с навигацией, но когда я нажимаю на другой элемент панели вкладок, а затем, когда я возвращаюсь к элементу первой панели вкладок (тот, у которого есть контроллер UINav), я бы предпочел, чтобы он вернулся к первый контроллер в навигационной последовательности.Сброс UINavigationController на первый контроллер при нажатии на панель вкладок
Я читал, что вы должны сделать что-то вроде:
- (void)tabBar:(UITabBar *)tabBar didSelectItem:(UITabBarItem *)item
{
[[self navigationController] popViewControllerAnimated:NO];
}
Но я не уверен, где я должен поставить этот метод. Кто является делегатом для контроллера панели вкладок? Он настроен в AppDelegate ... он должен туда попасть?
Спасибо.
Хм ... это имеет смысл, но я не могу получить tabBar: didSelectItem: ответить (у меня сейчас есть инструкция NSLog(), и ничего не появляется). Я установил [tabBarController setDelete: self]; но ничего. – rpheath
Хорошо, я понял. Мне пришлось использовать '- (void) tabBarController: (UITabBarController *) tabBarController didSelectViewController: (UIViewController *) viewController' вместо этого. Благодаря! – rpheath