为不同的视图控制器设置状态栏颜色
Posted
技术标签:
【中文标题】为不同的视图控制器设置状态栏颜色【英文标题】:Set status bar colour for different view controllers 【发布时间】:2014-07-17 09:01:38 【问题描述】:我有 6 个视图控制器。我想将我的第一个视图控制器的状态栏设置为黑色,然后将其他 5 个设置为白色。所有视图控制器都在一个推送堆栈中。
我已经尝试实现
[self setNeedsStatusBarAppearanceUpdate]
- (UIStatusBarStyle) preferredStatusBarStyle
return UIStatusBarStyleLightContent;
这似乎不起作用。我也尝试过使用应用程序 plist 属性。有什么想法吗?
【问题讨论】:
【参考方案1】:如果您想更改状态栏的背景颜色,那么这是可能的。
您必须将UIWindow 's background colour
更改为您喜欢的颜色。尝试关注
例如
[[UIApplication sharedApplication].delegate window].backgroundColor = [UIColor orangeColor];
如果你想改变文字颜色,那就试试吧
[[UIApplication sharedApplication] setStatusBarStyle:UIStatusBarStyleLightContent];
【讨论】:
【参考方案2】:您在 Plist 中错过了此设置
查看基于控制器的状态栏外观到YES
【讨论】:
谢谢,我刚刚设置了,没有任何改变。【参考方案3】:执行以下操作。
-
查看基于控制器的状态栏外观 = 否在 plist 中。
您要在 ViewwillApper 添加 白色 的 ViewController 添加
[[UIApplication sharedApplication] setStatusBarStyle:UIStatusBarStyleLightContent];
你想在ViewwillApper中黑色添加的ViewController
[[UIApplication sharedApplication] setStatusBarStyle:UIStatusBarStyleDefault];
【讨论】:
以上是关于为不同的视图控制器设置状态栏颜色的主要内容,如果未能解决你的问题,请参考以下文章