网上搜索常见的通过UIApplication来隐藏statusBar或者通过控制器的prefersStatusBarHidden方法这两种就不写了,通过这个方法隐藏会有个问题就是NavigationBar的顶栏会高会变成44,调起来也蛮麻烦的。
最简单的办法通过控制keyWindow的等级,让keyWindow覆盖状态栏就可以了,这样不会影响到顶栏的高度,效果如图:

第一个控制器:
- (void)viewWillAppear:(BOOL)animated {
[UIApplication sharedApplication].keyWindow.windowLevel = UIWindowLevelStatusBar;
}
第二个控制器:
- (void)viewWillAppear:(BOOL)animated {
[UIApplication sharedApplication].keyWindow.windowLevel = UIWindowLevelNormal;
}
网友评论