在我的iOS应用程序中,我有一个UITabBarController。在TabBar内部的每个视图的顶部我想要一个带标题的NavigationBar。我不想使用这个NavigationBar在视图之间导航,我只想用它来显示视图的标题。
在我看来,将NavigationBar放入每个视图并不是一个好主意。此NavigationBar应位于根视图中 - TabBarController的视图。但是如果我把它放到根视图中,则子视图会将根视图与不可见的NavigationBar重叠。
你能告诉我应该如何解决这个问题吗?感谢。
答案 0 :(得分:3)
将ViewController嵌入UINavigationController
。通过这样做,您将在View Controller中获得一个导航栏,您可以在那里设置标题。要嵌入,请按照以下步骤操作。
storyboard
中,单击“查看控制器”,以便在其上显示蓝色边框。在这里,如果当前您的View控制器嵌入在UITabBarController
中,那么也可以。只需按照这些步骤操作,您就会看到导航栏以及底部的标签栏菜单。
希望这有帮助。
答案 1 :(得分:1)
在我看来,将NavigationBar放入每个视图并不是一个好主意。
我不同意。您可以在多个视图中使用导航栏,特别是如果您希望在每个视图中使用不同的导航栏按钮。
如果这是一个糟糕的编码实践,Apple将不会在Xcode中包含没有控制器的栏。例如,它们不包括汉堡包导航控制器,因为它的设计理念不好。
答案 2 :(得分:1)
隐藏导航栏:
[[self navigationController] setNavigationBarHidden:YES animated:YES];
要表明:
[[self navigationController] setNavigationBarHidden:NO animated:YES];