代码之家  ›  专栏  ›  技术社区  ›  Recusiwe

状态栏的颜色不会更改为我的导航栏

  •  0
  • Recusiwe  · 技术社区  · 6 年前

    我遇到了一个奇怪的问题。突然,我的状态栏的颜色不会更改为与tabbarcontroller中的导航栏相同的颜色。

    enter image description here

    我试过设置导航栏的颜色

    self.navigationController!.navigationBar.barTintColor = UIColor(red: 57, green: 79, blue: 116)
            self.navigationController?.navigationBar.tintColor = UIColor.white
            self.navigationController?.navigationBar.isTranslucent = false
            self.navigationController?.navigationBar.titleTextAttributes = [NSForegroundColorAttributeName: UIColor.white]
    

    但它只是更改导航栏的颜色,而不是状态栏。我错过了什么?

    2 回复  |  直到 6 年前
        1
  •  0
  •   DEVBUFF    6 年前

    在情节提要中创建导航控制器,将其绑定到控制器并更改其颜色。如果它允许你的项目当然。。

        2
  •  -1
  •   Jake    6 年前

    Answer found here :

    extension UIApplication {
        var statusBarView: UIView? {
            return value(forKey: "statusBar") as? UIView
        }
    }
    
    UIApplication.shared.statusBarView?.backgroundColor = .red