关于TabViewController的难题?

时间:2011-06-15 13:38:39

标签: iphone objective-c cocoa-touch

我制作了一个应用程序,其中我有2个tabs.and中有导航控制器, 问题是,一旦我点击标签栏并且有导航栏并且视图随着我向下钻取而改变。但是当我转到第二个选项卡然后返回到第一个选项卡然后它打开之前的视图当我改变标签时。它保留了视图,而我希望该标签应该以相同的第一个初始视图启动。

我们可以通过info.plist或者什么来做这件事。>?

提前致谢...

3 个答案:

答案 0 :(得分:0)

采用UITabBarControllerDelegate协议并实施tabBarController:shouldSelectViewController:方法。

- (BOOL)tabBarController:(UITabBarController *)tabBarController shouldSelectViewController:(UIViewController *)controller {
    [(UINavigationController *)controller popToRootViewControllerAnimated:NO];
    return YES;
}

这假设所有选项卡都有导航控制器。

答案 1 :(得分:0)

这不是标签视图控制器的工作方式。您可以在app delegate中实现此方法(在将其作为UITabeBarController的委托之后)....

- (void)tabBarController:(UITabBarController *)tabBarController didSelectViewController:(UIViewController *)viewController

然后在视图控制器上调用reset方法(或类似方法)以弹回根视图控制器。

然而,这不是你通常使用UITabBarControllers的方式....

答案 2 :(得分:0)

您可以实施

- tabBarController:didSelectViewController:

在UITabBarController的委托中,然后调用

– popToRootViewControllerAnimated:
UINavigationController上的