iPhone Objective-C: отключить выталкивание стека при нажатии на вкладку с помощью контроллера навигации - PullRequest
3 голосов
/ 27 июля 2010

Допустим, у меня есть контроллер панели вкладок с вкладкой A. A имеет контроллер навигации, который позволяет мне помещать новые представления в стек. Прямо сейчас, если я коснусь А на панели вкладок, все элементы в стеке А выскочат.

Есть хороший способ отключить это? У меня есть последовательность представлений, которые отображаются с помощью контроллера навигации, который принимает пользовательский ввод, не хотел бы, чтобы все это было потеряно одним движением пальца.

Заранее спасибо, и, пожалуйста, дайте мне знать, если мой вопрос неясен.

1 Ответ

2 голосов
/ 27 июля 2010

Попробуйте настроить делегата для вашего UITabBarController и реализовать:

- (BOOL)tabBarController:(UITabBarController *)tabBarController shouldSelectViewController:(UIViewController *)viewController

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

Обратите внимание, что он будет вызываться только для той же вкладки, на которой вы уже работаете в iOS 3.0, но на данный момент я выбрал бы iOS 3.0 +.

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