像这样的标签栏控制器之后,我有一个导航控制器
我想隐藏第一页上的导航栏,但是如果打开应用程序,它仍然不会隐藏。
我已经执行以下操作:
[[[self navigationController] setNavigationBarHidden:YES动画:YES];
当我单击“后退”按钮时,它会显示我的初始屏幕页面,如果我继续下一步,它将显示“首页”,但导航栏被隐藏。
这是我打开应用程序时的页面
这是当我单击返回并转到同一页面时
您知道从一开始就隐藏导航栏的想法吗?
答案 0 :(得分:0)
您可以这样做。
localNavigationController = [[UINavigationController alloc] initWithRootViewController:theViewController];
[localNavigationController setNavigationBarHidden:YES animated:YES];
答案 1 :(得分:0)
首先,我将解决您的问题。然后,我将介绍UINavigationController。
因此,您使用SB在Main.storyboard
中创建一些viewController。这些viewController必须继承UITabBarController,UINavigationController或ViewController。
我看到您的屏幕截图是正确的,否则您的屏幕截图不清楚。
如果要编辑视图或布局视图,则需要创建ViewController并将其与Main.storyBoard
中的ViewController匹配。我将测试这些操作。您可以做到这一点。
然后这些ViewController继承匹配的ViewController。
HomeTabBarViewController
SecondViewController
如上所述,这非常清楚。如果要在第一页中隐藏导航栏,则必须在FirstViewController
中手写代码。还要在viewWillAppear:
self.navigationController.navigationBar.hidden = YES;
仅此而已。
如果您在HomeTabBarViewController中的手写代码隐藏的NavigationBar继承了UITabBarController,则因为navigationController是下一个在隐藏代码中不起作用的ViewController。
因此,UINavigationController具有自动创建导航栏。您不希望显示此导航栏以使用viewWillAppear
中的隐藏导航栏。而且您也想隐藏此页面和下一页显示,可以{{1 }}隐藏,viewWillAppear
显示。
希望可以帮助您解决问题。