typedef NS_ENUM(NSInteger, UIStatusBarStyle) {
UIStatusBarStyleDefault = 0, //状态栏的字体为黑色
UIStatusBarStyleLightContent //状态栏的字体为白色
UIStatusBarStyleBlackTranslucent//黑色半透明的
UIStatusBarStyleBlackOpaque //黑色不透明
}
情况描述:大部分页面状态条是白色,个别是黑色
方法:
1、在info.plist中,将View controller-based status bar appearance设为NO
2、在app delegate中:
[UIApplication sharedApplication].statusBarStyle = UIStatusBarStyleLightContent;
经过1和2,默认状态条改为了白色
3、在个别状态栏字体颜色不一样的控制器中设置为黑色
-(void)viewWillAppear:(BOOL)animated {
[super viewWillAppear:animated];
[UIApplication sharedApplication].statusBarStyle = UIStatusBarStyleDefault;
}
-(void)viewWillDisappear:(BOOL)animated {
[super viewWillDisappear:animated];
[UIApplication sharedApplication].statusBarStyle = UIStatusBarStyleLightContent;
}