在Xcode中使用UINavigationController时如何更改UIStatusBar的背景颜色?

时间:2014-10-15 19:46:12

标签: ios xcode uinavigationcontroller statusbar swrevealviewcontroller

在我的项目中,我已经集成了SWRevealViewController,当我进行设置时,我注意到我的一个视图控制器 - 由UINavigationController管理 - 即使视图控制器的背景颜色也有黑色状态栏是白色的。如何将状态栏颜色更改为白色? (以编程方式或在Interface Builder中)

1 个答案:

答案 0 :(得分:4)

如果状态栏下方是导航栏,状态栏样式将调整为与导航栏样式匹配(UINavigationBar.barStyle):

具体来说,如果导航栏样式为UIBarStyleDefault,则状态栏样式为UIStatusBarStyleDefault;如果导航栏样式为UIBarStyleBlack,则状态栏样式为UIStatusBarStyleLightContent

所以在你的情况下,状态栏是黑色的, 如果你想在UINavigationController上使用UIStatusBarStyleLightContent

   self.navigationController.navigationBar.barStyle = UIBarStyleBlack;

您也可以参考:preferredStatusBarStyle isn't called