更改状态栏颜色

时间:2016-04-09 21:59:29

标签: ios swift uinavigationcontroller uinavigationbar

我使用下面的代码来制作导航控制器不透明度:

const div;
if( condition ){
   div = <div tabIndex="1"></div>
}else{
   div = <div></div>
}

此代码的问题是当我使用此代码时,我的状态栏没有与导航栏相同的不透明度,为什么?我怎么解决这个问题?

2 个答案:

答案 0 :(得分:1)

单击故事板中的导航控制器,确保顶部栏设置为不透明导航栏,状态栏设置为默认。删除你所做的所有代码行,然后执行这个简单的行。

self.navigationController!.navigationBar.barTintColor = UIColor(red: 114/255, green: 176/255, blue: 29/255, alpha: 1.0)

这将解决您的问题。所有这些额外的行都不是你想要达到的目标所必需的。

答案 1 :(得分:0)

尝试这样的事情。

func setWhiteStatusBarColor() {
    self.navigationController?.navigationBar.barStyle = UIBarStyle.Black
    self.setNeedsStatusBarAppearanceUpdate()
}

func setBlackStatusBlackColor() {
    self.navigationController?.navigationBar.barStyle = UIBarStyle.Default
    self.setNeedsStatusBarAppearanceUpdate()
}

您可以在UIViewController类中调用此函数。

希望对你有帮助