我正在使用故事板为iOS 5编程。 我正在尝试使用导航控制器创建一个应用程序。 在我的应用程序中,我希望一些视图控制器有导航栏,有些我不想。
我使用以下link作为我的指导来创建一个。
这就是我以编程方式隐藏导航栏的方式:
在MyAppDelegate中,我声明了一个变量:
UINavigationController *navigationController;
@property (strong, nonatomic) IBOutlet UINavigationController *navigationController;
在我的UIViewController中,这是第一个UIViewController,我做了以下
- (void)viewDidload
{
[self.navigationController setNavigationBarHidden:YES animated:YES];
[super viewDidUnload];
// Release any retained subviews of the main view.
// e.g. self.myOutlet = nil;
}
但这不起作用......
如何让它发挥作用?
答案 0 :(得分:3)
拉吉,
尝试将这两个函数添加到您的UIViewController:
- (void) viewWillAppear:(BOOL)animated
{
[super viewWillAppear:animated];
[self.navigationController setNavigationBarHidden:YES animated:animated];
}
- (void) viewWillDisappear:(BOOL)animated
{
[super viewWillDisappear:animated];
[self.navigationController setNavigationBarHidden:NO animated:animated];
}
答案 1 :(得分:0)
在Navigation Controller
中选择story board
,转到attributes inspector
,有一个名为Shows Navigation Bar
的复选框,取消选中它。
如果在setNavigationBarHidden:YES
中设置viewWillAppear:
,动画(隐藏导航栏)仍会显示。
这是主要区别。