我有一个导航控制器,它的根视图控制器是一个标签栏控制器。在这个标签栏控制器中,我有两个视图控制器,如下所示:
在标签栏控制器中,我有一个自定义导航栏。 当我单击标签栏中的第一个项目时,导航栏看起来很好 但是当我点击第二个时,我遇到了一个问题:在导航栏下方还有另一个红色导航栏。 有人可以帮我解释一下吗?
答案 0 :(得分:0)
如果您不想要第一个导航控制器的导航栏,那么从界面构建器(故事板)中选择您的根导航控制器(即嵌入了tabbarcontroller的navigationcontroller)和attribute inspector
取消选中shows navigation bar
下的导航控制器Navigation controller
!这将隐藏根导航视图控制器的导航栏!!
在您的情况下,您应隐藏并在viewWillDisAppear
和viewWillAppear
中显示导航栏,
在viewWillAppear
self.navigationController.navigationBar.hidden = NO;
在viewWillDisAppear
self.navigationController.navigationBar.hidden = YES;
为tabbarcontroller的两个viewcontroller执行以上操作!!
答案 1 :(得分:0)
您可以在根导航控制器上执行navigationController.navigationBarHidden = true
,也可以在适合您的孩子身上执行UINavigationController
。
但如果您只使用一个navigationController
和IMO UITabBarController
List
,那就更好了。