我陷入了混乱的境地。 我正在使用导航控制器和UIPageViewController。
首先我们有一个包含带有searchDisplayController的TableView的视图。 此表视图显示故事列表。您可以选择一个单元格并转到另一个视图(基于页面的视图)并阅读故事。所以在第二个视图中我隐藏了导航栏。因为读者想要卷曲页面。
这里的每件事都很有效,直到我在searchBar(第一个视图)中搜索一个单词,然后选择单元格,然后转到第二个视图,导航栏将不会隐藏!
这两个视图都继承自UIViewController。
在第二个视图中,我这样做了:
- (void)viewWillAppear:(BOOL)animated
{
[super viewWillAppear:animated];
[self.navigationController setNavigationBarHidden:YES animated:animated];
if (self.navigationController.navigationBarHidden) {
NSLog(@"navigation bar is hidden");
}
}
即使我明确隐藏了导航栏,当它到达If语句时,导航栏也不会被隐藏。
我做错了什么?
答案 0 :(得分:0)
不要隐藏导航栏。只需减少其alpha。
self.navigationController.navigationBar.alpha =0;
答案 1 :(得分:0)
在appDelegate.m中执行此操作
[self.navigationController setNavigationBarHidden:YES];
在alloc启动UINavigation控制器之后,在将其添加到窗口之前。
答案 2 :(得分:0)