1

我有一个带有一组选项卡的 UITabBarController。其中一些在被选中时会显示一个表格。如果触摸表格的单元格,则使用“pushViewController”将用户带到单元格本身中对象的详细信息屏幕。

当我单击另一个选项卡并位于详细信息页面时,我会看到新的选项卡页面。这很好。当我单击返回上一个选项卡时,我想再次显示表格而不是详细信息页面...

这可能吗?

谢谢!

4

2 回答 2

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。
  • 您的选项卡必须包含作为导航控制器的根控制器(必须是,否则您将无法“推送”详细信息)。
于 2010-10-15T15:39:34.723 回答
0

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

顺便说一句,您还可以在界面构建器中进行大部分导航控制器设置,如下所示:

替代文字

于 2010-10-15T16:36:30.987 回答