改变状态栏风格ios 7?

我正在尝试更改我的一个viewcontroller的状态栏样式。 我已经把这个

  1. 在plist中将基于视图的状态栏设置为YES

2。

-(UIStatusBarStyle)preferredStatusBarStyle{ return UIStatusBarStyleLightContent; } 
  1. 还加了这个

[self setNeedsStatusBarAppearanceUpdate]

它的作品,即我可以看到字体的颜色白色,但只是在一段时间后,它变回了以前的types..

如果您在运行时遇到状态栏更改颜色本身

尝试在plist中设置UIViewControllerBasedStatusBarAppearanceNO

并在你的viewController里面设置外观调用

 -(void)viewDidLayoutSubviews { if ([self respondsToSelector:@selector(setNeedsStatusBarAppearanceUpdate)]) { [self setNeedsStatusBarAppearanceUpdate]; } } 

写下面的代码

 -(void)viewWillAppear:(BOOL)Animated{ [[UIApplication sharedApplication] setStatusBarStyle:UIStatusBarStyleLightContent]; } 

这是我可以为iOS7工作的唯一的东西

 - (UIStatusBarStyle)preferredStatusBarStyle { return UIStatusBarStyleLightContent; } 

你可以检查这个代码 ,一个小窍门 – 但有时候很有用。