UITabBarcontroller,UITableView和pushView

时间:2010-10-15 15:35:43

标签: iphone uitableview uitabbarcontroller pushviewcontroller

我有一个带有一组标签的UITabBarController。 其中一些,如果选中,会显示一张桌子。 如果触摸了表格的单元格,则使用“pushViewController”将用户带到单元格中对象的详细屏幕。

当我点击其他标签,并且我在详细信息页面中时,会看到新的标签页。 这很好。当我点击回到上一个标签时,我想再次显示表格,而不是详细页面...

这可能吗?

谢谢!

2 个答案:

答案 0 :(得分:1)

有可能。代码:

// 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。
  • 您的标签必须包含作为导航控制器的根控制器(必须是,否则您将无法“推送”详细信息)。

答案 1 :(得分:0)

请参阅UITabBarControllerDelegate协议,设置切换选项卡时将通知哪个控制器,然后使用该控件弹出详细信息控制器。

顺便说一句,你也可以在接口构建器中完成大部分导航控制器设置,如下所示:

alt text