根据控制器方案,在将状态栏更改为“Light”后,将状态栏更改回默认值

时间:2014-04-03 14:57:54

标签: ios7 uiapplication uistatusbar

我希望能够在每个视图控制器的基础上更改状态栏颜色。我的ViewController流程是A-> B-> C。启动状态栏颜色为黑色(在A中),我在控制器B中将其更改为白色。我在B viewDidLoad中使用以下内容:

 [[UIApplication sharedApplication] setStatusBarStyle:UIStatusBarStyleLightContent];
 [self setNeedsStatusBarAppearanceUpdate];

完美无缺。但是当我回到ViewController A时,它也是白色的。我尝试使用以下代码将其更改回来,但它不起作用:

 [[UIApplication sharedApplication] setStatusBarStyle:UIStatusBarStyleDefault];
 [self setNeedsStatusBarAppearanceUpdate];

我也尝试过:

[UIApplication sharedApplication].statusBarStyle = UIStatusBarStyleBlackTranslucent;

但它已被弃用且无效。

我已经在SO上看到了关于此的其他问题,但他们会告诉您如何更改它但不会更改回默认值。

提前致谢

1 个答案:

答案 0 :(得分:0)

viewWillAppear中将导航栏设置回默认设置就可以了。