Swift笔记-改变状态栏的字体颜色

改变状态栏颜色要分为两种情况

没有导航栏UINavigationBar

没有导航栏的情况下,我们需要在VC中重写 preferredStatusBarStyle 可读属性,让后再调用setNeedsStatusBarAppearanceUpdate()方法去触发修改导航栏颜色的方法。

    override var preferredStatusBarStyle: UIStatusBarStyle {
        return UIStatusBarStyle.lightContent
    }
    

    override func viewDidLoad() {
        super.viewDidLoad()
        setNeedsStatusBarAppearanceUpdate()    
   }

有导航栏

有导航栏的话,状态栏字体颜色时取决与NavigationBar的barStyle属性的,重写preferredStatusBarStyle是不会生效的。
当navigationBar.barStyle = .default时状态栏的颜色为黑色
当navigationBar.barStyle = .black时状态栏的颜色为白色

你可能感兴趣的:(Swift笔记-改变状态栏的字体颜色)