【发布时间】:2012-08-24 23:30:44
【问题描述】:
我有带有 NavigationController 的 rootViewController。在 rootView 上,navigationBar 是隐藏的。当我按下下一个视图时,会显示导航栏。因此,当我从第二个视图返回到 rootView 时,导航栏会隐藏。没关系。然后我想从第二个视图转到第三个视图并显示导航栏。但它是隐藏的,因为在第二个视图中,当从第二个视图转到它时,我有这段代码可以在 rootView 中隐藏 navBar:
-(void)viewWillDisappear:(BOOL)animated{
[super viewWilDisappear:animated];
[self.navigationcontroller setNavigationBarHidden:YES animated:YES];
}
如何仅在 rootView 上显示 navBar 而在所有其他视图上隐藏它??
第二个视图是 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];
}
谢谢你们的帮助!!
【问题讨论】:
-
请重新提出您的问题。真的很难理解你的意思!哪些视图控制器应该显示导航栏?
-
第二个和第三个视图控制器应该显示导航栏。
-
请将正确答案标记为正确答案!!!
标签: iphone uinavigationcontroller uinavigationbar