【问题标题】:Set status bar colour for different view controllers为不同的视图控制器设置状态栏颜色
【发布时间】:2014-07-17 09:01:38
【问题描述】:

我有 6 个视图控制器。我想将我的第一个视图控制器的状态栏设置为黑色,然后将其他 5 个设置为白色。所有视图控制器都在一个推送堆栈中。

我已经尝试实现

[self setNeedsStatusBarAppearanceUpdate]

- (UIStatusBarStyle) preferredStatusBarStyle { 
return UIStatusBarStyleLightContent; 
}

这似乎不起作用。我也尝试过使用应用程序 plist 属性。有什么想法吗?

【问题讨论】:

    标签: ios objective-c uistatusbar


    【解决方案1】:

    如果您想更改状态栏的背景颜色,那么这是可能的。 您必须将UIWindow 's background colour 更改为您喜欢的颜色。尝试关注

    例如

    [[UIApplication sharedApplication].delegate window].backgroundColor = [UIColor orangeColor];
    

    如果你想改变文字颜色,那就试试吧

     [[UIApplication sharedApplication] setStatusBarStyle:UIStatusBarStyleLightContent];
    

    【讨论】:

      【解决方案2】:

      您在 Plist 中错过了此设置

      查看基于控制器的状态栏外观YES

      【讨论】:

      • 谢谢,我刚刚设置了,没有任何改变。
      【解决方案3】:

      执行以下操作。

      1. 查看基于控制器的状态栏外观 = 否在 plist 中。
      2. 您要在 ViewwillApper 添加 白色 的 ViewController 添加

        [[UIApplication sharedApplication] setStatusBarStyle:UIStatusBarStyleLightContent];
        
      3. 你想在ViewwillApper中黑色添加的ViewController

        [[UIApplication sharedApplication] setStatusBarStyle:UIStatusBarStyleDefault];
        

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2020-04-21
        • 1970-01-01
        • 2016-12-22
        • 1970-01-01
        • 2016-05-10
        • 1970-01-01
        • 1970-01-01
        • 2014-01-04
        相关资源
        最近更新 更多