popToViewController与特定的UITabBarController选项卡/视图

时间:2012-06-24 13:04:15

标签: iphone ios uitabbarcontroller poptoviewcontroller

我正在使用popToViewController方法弹出到视图控制器。我想要实现的是弹出一个UITabBarController的特定索引。

NSArray *viewArrays = [self.navigationController viewControllers];

所以我的视图层次结构是;

<LoginViewController: 0x6b75850>,
<UITabBarController: 0x6ba0b50>,
<RequestViewController: 0x684fe90>,
<ApplyViewController: 0x6845790>

以下代码会弹出到我的UITabBarController,但由于我在UITabBarController的第三个视图中,它会弹回第三个视图

[[self navigationController] popToViewController:[self.navigationController.viewControllers objectAtIndex:1]  animated:YES];

我想要的是弹出我的UITabBarController的第二个视图。

编辑(答案)

如上所述,我们不推或弹。所以为了收集你的tabBarController你要么使用;

UITabBarController *myTabController = [self.navigationController.viewControllers objectAtIndex:indexOfYourTabBarControllerInYourNavigationController];
myTabController.selectedIndex = indexToGo;

或者如果您在某个tabBarController视图中;

self.tabBarController.selectedIndex = indexToGo;

1 个答案:

答案 0 :(得分:2)

在UITabBarController中,你不要弹出和推送,如果你想转到第二个视图,你将设置所选的索引

喜欢这样

yourTabController.selectedIndex = 1;

或者,如果当前视图控制器是tabBarController的一部分

self.tabBarController.selectedIndex = 1;