微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

设置statusbarStyle在iOS 9.0中已弃用

如何解决设置statusbarStyle在iOS 9.0中已弃用

使用与现在相同的代码设置darkMode变量,然后在系统期望的计算变量中使用它:

var darkMode = false
override var preferredStatusBarStyle : UIStatusBarStyle {
    return darkMode ? .default : .lightContent
}

根据上下文,您可能需要强制刷新屏幕以使其生效。您可以通过以下调用进行操作:

setNeedsstatusBarappearanceUpdate()

解决方法

刚刚下载了新的xCode 10.0,并发现自iOS 9.0起不赞成使用旧的statusBarStyle。

警告: Setter for 'statusBarStyle' was deprecated in iOS 9.0: Use -[UIViewController preferredStatusBarStyle]

不推荐使用的代码: UIApplication.shared.statusBarStyle = .default

我尝试使用self.preferredStatusBarStyle,但发现该属性只是一个吸气剂。所以谁知道如何设置statusBarStyle

编辑

我想在一个函数内更改statusBarStyle,用户可以在其中切换不同的主题。例如:

func changeStatusBar(toDarkMode: Bool) {
    if toDarkMode {
        // Set to light statusBarStyle
    } else { 
        // Set to default
    }
}

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。