如果需要全局隐藏APP的statusBar,需要做到如下两点:
1, 在APPDelegate中,设置application.statusBarHidden为YES,即
[[UIApplication sharedApplication] setStatusBarHidden:YES withAnimation:UIStatusBarAnimationFade];
2, 在info.plist中,设置UIViewControllerBasedStatusBarAppearance为false。
如果要单独隐藏某个ViewController的statusBar呢,重写其prefersStatusBarHidden方法返回YES即可,
- (BOOL)prefersStatusBarHidden {
return YES;
}
Specifies whether the view controller prefers the status bar to be hidden or shown.
Return Value:
A Boolean value of YES specifies the status bar should be hidden. Default value is NO.
Discussion:
If you change the return value for this method, call the setNeedsStatusBarAppearanceUpdate method.
To specify that a child view controller should control preferred status bar hidden/unhidden state, implement the childViewControllerForStatusBarHidden method.
一旦重写了prefersStatusBarHidden方法,记得调用setNeedsStatusBarAppearanceUpdate使其生效即可。