ios 设置状态栏字体颜色

1、ios9.0以前设置状态栏字体颜色

///白色
 [[UIApplication sharedApplication]setStatusBarStyle:UIStatusBarStyleLightContent];

///黑色
 [[UIApplication sharedApplication]setStatusBarStyle:UIStatusBarStyleDefault];

会看到如下提示:

'setStatusBarStyle:' is deprecated: first deprecated in iOS 9.0 - Use -[UIViewController preferredStatusBarStyle]

注意:1、该方法在9.0后就废弃了,需要使用在preferredStatusBarStyle方法中实现
2、setStatusBarStyle设置状态栏颜色,我们需要在plist中添加
View controller-based status bar appearance —>NO
3、⚠️划重点:上面这个属性会影响 preferredStatusBarStyle的,
4、所以你在使用preferredStatusBarStyle来实现时,该值需要设置为YES,否则不生效
5、⚠️也就是说View controller-based status bar appearance 值为NO使用
setStatusBarStyle生效,为YES时preferredStatusBarStyle生效,一定要注意啦

2、iOS9.0以后使用如下方式:

- (UIStatusBarStyle)preferredStatusBarStyle {
    //1:白色  0:黑色
    if (self.vcFlag == 1) {
           return UIStatusBarStyleLightContent;
    }else {
        if (@available(iOS 13.0, *)) {
            return UIStatusBarStyleDarkContent;
        } else {
           return UIStatusBarStyleDefault;
        }
    }
}

注意:View controller-based status bar appearance 为YES

要想在页面滑动时,状态栏字体颜色会随着变黑或白色,flag我们已经添加,只要让其主动调用该方法

///会自动调用preferredStatusBarStyle方法,只要加上相关判断即可
[self setNeedsStatusBarAppearanceUpdate];
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值