UINavigationController в UITabBarController - Перейти вверх на вкладке выбора - PullRequest
1 голос
/ 21 февраля 2012

У меня есть UITabBarController с пятью видами, в одном из которых есть UINavigationController.

Как я могу гарантировать, что в любое время выбранная вкладка, содержащая UINavigationController, переходит в вид сверху в UINavigationController?

Ответы [ 2 ]

4 голосов
/ 21 февраля 2012

Нет класса UITabViewController.Я предполагаю, что вы имеете в виду UITabBarController.

Установить делегата для вашего UITabBarController.Дайте делегату ссылку на навигационный контроллер.Например, возможно, вы будете использовать свой делегат приложения в качестве делегата контроллера панели вкладок:

@interface AppDelegate : NSObject <UIApplicationDelegate, UITabBarControllerDelegate>

@property (nonatomic, weak) IBOutlet UINavigationController *theNavigationController;

Убедитесь, что вы подключили свойство, либо в своем кончике, либо в коде.Затем в делегате переопределите метод tabBarController:didSelectViewController::

@implementation AppDelegate

- (void)tabBarController:(UITabBarController *)tabBarController didSelectViewController:(UIViewController *)viewController {
    if (viewController == self.theNavigationController) {
        [self.theNavigationController popToRootViewControllerAnimated:NO];
    }
}
1 голос
/ 21 февраля 2012

Установите делегат UITabBarViewContoller и реализуйте его tabBarController:didSelectViewController:, чтобы он вызывал ваши UINavigationController popToRootViewControllerAnimated:, когда выбран UINavigationController.

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