0

如果在我的一个视图中有一个导航栏和一个标签栏。这一切都很好。Tab Bar 项目之一需要在导航堆栈上推送其他几个视图控制器,然后才能到达我需要的位置。这也有效。当我单击选项卡栏项目时,它会直接返回堆栈。如何使所需的控制器粘在标签栏项目中?

4

1 回答 1

1

这是选项卡栏的标准行为,如果您将其设置为每个选项卡指向主 nib 文件中的不同视图控制器。它实际上非常有用,允许用户在特定堆栈中深入导航,然后按已选择的选项卡按钮返回主/顶层。

请注意,仅当您单击已选择的选项卡时才会发生此行为。您可以在选项卡栏委托中实现一行,以拦截对选项卡的单击,如果该选项卡已被选中,则忽略它。

为此,您需要手动处理不同视图控制器的显示。你想实现这个方法:

- (void)tabBar:(UITabBar *)tabBar didSelectItem:(UITabBarItem *)item

然后自己将不同的视图推送到导航堆栈上。

于 2010-03-21T23:05:35.357 回答