我想在我的应用程序中使用白色状态栏.为此,我设置View controller-based status bar appearance
到NO
和Status bar style
到UIStatusBarStyleLightContent
.但现在我需要在某些视图控制器中隐藏状态栏.要隐藏它,我必须设置View controller-based status bar appearance
到YES
,并添加- (BOOL)prefersStatusBarHidden {return YES;}
.但状态栏现在是黑色的.它是黑色的,如果View controller-based status bar appearance
是YES
白色的话NO
.那么问题是,如何设置白色状态栏并隐藏它?
UPD:VC中的代码我想要有白色状态栏(prefferdSTatusBarStyle
未调用)
VC中的代码,隐藏状态栏
.plist设置
结果是黑色状态栏,隐藏在某个VC中
UPD2:
我知道使用弃用的方法很糟糕,但[[UIApplication sharedApplication] setStatusBarHidden:YES];
一切都按照我的意愿运行.如果有人有更好的解决方案,请告诉我.
这是快速版本:
要隐藏状态栏或更改其外观,您需要在视图控制器本身中覆盖以下属性
override var prefersStatusBarHidden: Bool{ return true }
如果要将其设置为白色,则上面隐藏状态栏及其下方:
override var preferredStatusBarStyle: UIStatusBarStyle { return .lightContent }