【发布时间】:2013-04-03 08:04:15
【问题描述】:
我对导航控制器感到困惑,我在应用程序中的第一个视图包含 4 个按钮,我想在这个视图中添加一个导航控制器,以便根据按下的按钮将另一个视图推送到导航控制器,我可以看到我被重定向到其他视图的导航栏。
但是我不想在第一个视图的顶部看到导航栏。有没有办法将导航控制器添加到 appdelagete 并使导航栏在我的第一个屏幕上不可见。
提前致谢。
【问题讨论】:
我对导航控制器感到困惑,我在应用程序中的第一个视图包含 4 个按钮,我想在这个视图中添加一个导航控制器,以便根据按下的按钮将另一个视图推送到导航控制器,我可以看到我被重定向到其他视图的导航栏。
但是我不想在第一个视图的顶部看到导航栏。有没有办法将导航控制器添加到 appdelagete 并使导航栏在我的第一个屏幕上不可见。
提前致谢。
【问题讨论】:
在您的应用中添加导航栏
在AppDelegate 类的didFinishedLaunching:withOptions: 中使用以下代码:
ViewController *homeController = [[HomeController alloc] init];
self.controller = [[UINavigationController alloc] initWithRootViewController:viewController];
[self.window addSubview:self.controller.view];
[self.window makeKeyAndVisible];
在ViewController的viewWillAppear方法中,添加如下代码行:
[[self navigationController] setNavigationBarHidden:YES animated:NO];
在ViewController的viewWillDisappear方法中,添加如下代码行:
[[self navigationController] setNavigationBarHidden:NO animated:NO];
【讨论】:
将以下代码放入您的 viewWillAppear 方法中,以便在您每次返回第一个视图时调用它
[self.navigationController setNavigationBarHidden:YES animated:NO];
然后放
[self.navigationController setNavigationBarHidden:NO animated:NO];
在你要推送的下一个控制器的viewDidLoad中,或者,你也可以将上面的代码放在FirstViewController的viewWillDisappear中。
【讨论】: