当我使用嵌入在UINavigationController中的SWRevealViewController时,如何隐藏NavigationBar?

时间:2014-01-12 11:35:10

标签: ios7 uinavigationbar xcode5

当我使用SWRevealViewController作为初始视图或未嵌入UINavigationController时,结果如我所料:

enter image description here

但是当SWRevealViewController来自UINavigationController时,结果是: enter image description here

如何避免后视图中显示的NavigationBar?

3 个答案:

答案 0 :(得分:1)

请将以下代码添加到viewcontroller的viewWillAppear:方法中,该方法需要隐藏导航栏。

  [super viewWillAppear:YES];
[self.navigationController.navigationBar setHidden:YES];
[self.navigationController.navigationBar.backItem setHidesBackButton:YES];

答案 1 :(得分:0)

试试,这个代码用于后视控制器

- (void)viewWillAppear:(BOOL)animated
{ 
    self.navigationController.navigationBar.hidden = YES;
}

答案 2 :(得分:0)

如果你真的需要在SWRevealViewController之上使用导航控制器:

您必须隐藏SWRevealViewController导航控制器的导航栏。 U可以在IB中执行此操作(假设您使用的是Storyboard):

  1. 在故事板中选择导航控制器
  2. 打开属性检查器
  3. 找到“导航控制器”部分,取消选中“显示导航栏”
  4. Where to set navigation bar to hidden

    接下来,如果您想在前视图控制器中使用导航栏,请将其附加到单独的导航控制器。您将拥有两个导航控制器,想一想您要推送哪一个 - 它将产生不同的效果。