uitabbarcontroller,uitaiteView和PushView
-
30-09-2019 - |
题
我有一个带有一组标签的UitabbarController。其中一些选择时,请向您展示一张桌子。如果触摸了表的单元格,则使用“ PushViewController”将用户带到单元本身中对象的详细屏幕上。
当我单击另一个选项卡时,我在详细信息页中时,我会看到新的选项卡页面。这很好。当我单击上一个选项卡时,我想再次显示表,而不是详细信息页面...
这可能吗?
谢谢!
解决方案
有可能的。代码:
// Called when the user selected a tab. In iOS3+, called even when no change occurs.
- (void)tabBarController:(UITabBarController *)tabbarcontroller didSelectViewController:(UIViewController *)viewController
{
UINavigationController *nav = (UINavigationController *)viewController;
[nav popToRootViewControllerAnimated: NO];
}
说明:
- 这在您的AppDelegate中。
- 您的AppDelegate是UitabbarControllerDelegate。
- 您将UitabbarController的委托(在InterfaceBuilder中)设置为AppDelegate。
- 您的选项卡必须包含导航控制器的根控制器(必须是,否则您将无法“推动”详细信息)。
其他提示
看到 UITabBarControllerDelegate
设置在切换选项卡时将通知哪个控制器的协议,然后只使用它弹出详细信息控制器。
顺便说一句,您也可以在接口构建器中进行大多数此导航控制器设置,例如:
不隶属于 StackOverflow