返回导航控制器在TabBar应用程序中的第一个视图

时间:2012-02-26 11:28:11

标签: ios xcode uinavigationcontroller uitabbarcontroller uitabbar

我有一个tabbar应用程序。

标签栏中只有2个标签。第一个标签是NavigationControllerNavigationController中有两个视图 - 根视图和详细视图,第二个是TableViewController。第二个工作完美,但第一个没有。

我从第一个视图开始(NavigationController)。然后将此NavigationView转到详细信息视图。然后,例如,我转到第二个标签栏视图。然后回到第一个,但我没有看到根视图,但详细视图。

我怎样才能每次打开根视图?

1 个答案:

答案 0 :(得分:8)

使用UITabBarController delegate方法tabBarController:didSelectViewController:,如下所示:

- (void)tabBarController:(UITabBarController *)tabBarController didSelectViewController:(UIViewController *)viewController {
  if (viewController != tabBarItemForNavControllerTab) {
    [self.navControllerInFirstTab popToRootViewControllerAnimated:NO];
  }
}

同时确保在创建UITabBarController时正确设置了委托,并且您更改了我的代码段中的代码以适合您的控制器名称。