该图显示了我的故事板,其中包含了segues。
在tabBar的登陆视图控制器(即I)中,tabBar和navBar都是可见的,这是所需的。但是,如果执行segue(从I)到另一个viewcontroller(这里,II),我只想要navBar。我可以使用
隐藏tabBarself.tabBarController?.tabBar.isHidden = true
接下来,我可以通过在开头添加导航控制器来实现所需的结果,如下所示。
此配置会向前面的视图控制器添加导航栏(如启动画面),因此我必须隐藏这些视图控制器中的导航栏。
是否有其他方法不需要隐藏条形图并达到预期效果?
答案 0 :(得分:0)
你应该采用第一种方法。标签栏控制器具有隐藏底栏的默认属性。见下面的示例代码。
ViewController *viewController = [[ViewController alloc] init];
viewController.hidesBottomBarWhenPushed = YES; // This property needs to be set before pushing viewController to the navigationController's stack.
[self.navigationController pushViewController:viewController animated:YES];
这会在推送到任何子控制器时隐藏标签栏。
修改
您还可以从故事板中为tabbar控制器设置hidesBottomBarwhenpushed,这样您就不必记下任何代码。