设置navigationController.hidesBarsOnSwipe = YES从不再显示我的导航栏

时间:2014-10-23 08:47:07

标签: ios uinavigationcontroller uinavigationbar

当我设置navigationController.hidesBarOnSwipe = YES并尝试在显示的webView中滑动时,导航栏会被隐藏,但当我尝试滑动以取回它时,它将永远不会再显示。

我的ViewController正在监听滑动事件:

[self.navigationController.barHideOnSwipeGestureRecognizer addTarget:self action:@selector(swipe:)]?

但是,由于滑动隐藏了导航栏,因此实际上从未再次调用此选择器。有人实施了hidesBarOnSwipe吗?它是一个已知的错误,还是设计为隐藏后不会显示导航栏。

在:

enter image description here

后:

enter image description here

2 个答案:

答案 0 :(得分:11)

我的UIWebView存在同样的问题,通过将WebView的约束更新为相对于超级视图而非布局指南来解决此问题:

enter image description here

答案 1 :(得分:6)

我遇到类似的问题,即使我将hidesBarOnSwipe设置为NO后导航栏也未显示。添加以下行为我修复了(将hidesBarOnSwipe设置为NO

之后
[[self navigationController] setNavigationBarHidden:NO animated:YES];