美文网首页
preferredStatusBarStyle 设置不起作用

preferredStatusBarStyle 设置不起作用

作者: 王德夫 | 来源:发表于2020-03-15 10:41 被阅读0次

    1、全局设置:

    如果想全局设置statusbar的主题颜色,可以在plist里增加一行 UIStatusBarStyle的键值,这里可以设置两个值,就是上面提到那两个 UIStatusBarStyleDefault 和 UIStatusBarStyleLightContent

    或者在代码里设置:

    UIApplication.shared.statusBarStyle = .lightContent

    同时在plist里加一条View controller-based status bar appearance,并将其值设置为NO

    2、如果想在不同viewcontroller里自定义statusbar的主题颜色可以用override下面这个方法:

    - (UIStatusBarStyle)preferredStatusBarStyle { 

        return UIStatusBarStyleLightContent; 

    }

    但是有个前提:

    mineNav.navigationBar.barStyle = .black

    override var preferredStatusBarStyle:UIStatusBarStyle

    {if needsLightContent

    {return.lightContent}else{return.default}}

    private func changeStyle()

    {needsLightContent=true

    setNeedsStatusBarAppearanceUpdate()

    }

    iOS9.0后状态栏的显示效果交给了controller自己控制,其中preferredStatusBarStyle方法负责返回样式,setNeedsStatusBarAppearanceUpdate负责通知controller刷新状态栏

    参考:https://www.jianshu.com/p/ab0fa73d02c0

    相关文章

      网友评论

          本文标题:preferredStatusBarStyle 设置不起作用

          本文链接:https://www.haomeiwen.com/subject/iytqehtx.html