UITabBarController下的标签更多按钮有2个导航栏

时间:2011-04-16 05:16:39

标签: iphone ios uitabbarcontroller uinavigationbar

我在UITabBarController上有6个视图控制器。它们中的每一个都在它们的顶部有一个UINavigationBar(没有链接到UINavigationController),用于显示该视图控制器的标题,以及用于控制它的一些按钮。这很好,而我有5个控制器,因为没有“更多”按钮会出现,但是当我添加第6个时,会出现更多按钮。最终下面的标签有两个UINavigationBars!一个是我添加的,我的标题,另一个是由TabBar创建的,并有一个“后退”箭头返回到更多页面。我怎么能通过合并它们来解决这个问题呢?

谢谢,如果你想要截图,请问。

这是截图

http://imgur.com/S9rFR

棕色的是我制作的UINavigationBar子类,并添加到IB中的视图中。另一个是由Tab Bar控制器添加的。

2 个答案:

答案 0 :(得分:1)

是的,你需要合并它们。因为你需要更多的标签,所以更多的控制器将会出现,一旦你进入,它就会放回按钮(更多)。为了解决这个问题并保持棕色navigationBar,您需要在navigationController中使用tabs更多(仅限额外内容,而非所有内容)。这会在您的navigationBar上添加更多(后退按钮)。

但请记住,在more中,您还可以使用edit选项,使用哪个用户可以更改标签的位置。因此,在这种情况下,此问题可能会再次出现在其他控制器上。因此,请检查您是否可以禁用tabs的编辑(重新排列)。如果没有,那么您也应该对其他controllers(在其他tabs

中考虑相同

谢谢,

答案 1 :(得分:0)

好的,按照你的所有提示但没有运气,直到:我测试了这个https://stackoverflow.com/a/3397506/468868

基本上,你是对@Ravin,我们必须将这些项包装在NavigationControllers中,但在那之后,你必须指定:

- (void)viewDidLoad
{
    self.navigationController.navigationBarHidden = YES;
}

现在,我只需要弄清楚如何从“更多”视图中删除navigationController