iOS 8
之后,UINavigationController
为开发者提供了一些好用的功能,这些功能以前实现起来可能比较麻烦,而现在只需要一个属性就搞定了。
1. 横屏时,导航栏自动消失
self.navigationController.hidesBarsWhenVerticallyCompact = YES;
2. 单击屏幕时,导航栏自动消失
self.navigationController.hidesBarsOnTap = YES;
3. 弹出键弹时,导航栏自动消失
self.navigationController.hidesBarsWhenKeyboardAppears = YES;
4. 滑动屏幕时,导航栏自动消失
self.navigationController.hidesBarsOnSwipe = YES;
经测试,这个属性适用于WebView、UITableView、UICollectionView,但是注意:
- 导航条隐藏时会出现大黑条遮住状态栏,且导航条不会自动再显示出来;
- 当多个可滚动的控件同时出现的时候,离导航栏最近的那个视图滚动时会响应,其余滚动的时候不响应。