我需要根据视图控制器更改状态栏样式,因此在我的plist文件中,“View controller-based status bar appearance”设置为YES。
有时我需要隐藏状态栏!
我尝试使用setStatusBarHidden,但似乎只有在“View controller-based status bar appearance”设置为NO时才有效...
那么是否有一种方法可以隐藏状态栏?
首先,声明一个变量来表示是否隐藏:
@interface ExampleViewController
{
BOOL statusBarHidden;
}
第二步,覆盖UIViewController依赖于变量的方法:
- (BOOL)prefersStatusBarHidden {
return statusBarHidden;
}
Finally,当您需要隐藏状态栏时,请执行:
statusBarHidden = YES;
[self setNeedsStatusBarAppearanceUpdate];
显示
statusBarHidden = NO;
[self setNeedsStatusBarAppearanceUpdate];
prefersStatusBarHidden
方法。 - dan