我正在尝试更改我的一个视图控制器的状态栏样式。我把这个
- 在 plist 中将基于视图的状态栏设置为 YES
2.
-(UIStatusBarStyle)preferredStatusBarStyle{
return UIStatusBarStyleLightContent;
}
- 也添加了这个
[自我设置NeedsStatusBarAppearanceUpdate]
它可以工作,即我可以看到字体颜色为白色,但过了一段时间它又变回了以前的类型..
如果您在运行时遇到状态栏本身的颜色变化
尝试在 plist 中设置设置UIViewControllerBasedStatusBarAppearance
为NO 。
在你的 viewController.. 里面设置外观调用
-(void)viewDidLayoutSubviews
{
if ([self respondsToSelector:@selector(setNeedsStatusBarAppearanceUpdate)]) {
[self setNeedsStatusBarAppearanceUpdate];
}
}
编写以下代码
-(void)viewWillAppear:(BOOL)Animated{
[[UIApplication sharedApplication] setStatusBarStyle:UIStatusBarStyleLightContent];
}
这是我唯一可以为 iOS7 工作的东西
- (UIStatusBarStyle)preferredStatusBarStyle
{
return UIStatusBarStyleLightContent;
}
您可以检查此代码,这是一个小技巧——但有时很有用。