我有带有 NavigationController 的 rootViewController。在 rootView 上,navigationBar 是隐藏的。当我按下下一个视图时,会显示导航栏。因此,当我从第二个视图返回到 rootView 时,导航栏会隐藏。没关系。然后我想从第二个视图转到第三个视图并显示导航栏。但它是隐藏的,因为在第二个视图中,当从第二个视图转到它时,我有这段代码可以在 rootView 中隐藏 navBar:
-(void)viewWillDisappear:(BOOL)animated{
[super viewWilDisappear:animated];
[self.navigationcontroller setNavigationBarHidden:YES animated:YES];
}
如何仅在 rootView 上显示导航栏并在所有其他视图上隐藏它?
第二个视图是 UIViewController 的子类,第三个视图也是 UIViewController 的子类,其中 UITableView 由 IB 创建。
UPD
在第一个 viewController 我添加了这个:
-(void)viewDidLoad{
[self.navigationController setNavigationBarHidden:YES];
[super viewDidLoad];
}
-(void)viewWillAppear:(BOOL)animated{
[super viewWillAppear:animated];
[self.navigationController setNavigationBarHidden:YES animated:YES];
}
-(void)viewWillDisappear:(BOOL)animated{
[super viewWillDisappear:animated];
[self.navigationController setNavigationBarHidden:NO animated:YES];
}
在第三个中:
-(void)viewWillAppear:(BOOL)animated{
[super viewWillAppear:animated];
[self.navigationController setNavigationBarHidden:NO animated:YES];
}
谢谢你们的帮助,伙计们!!