【问题标题】:How to change Status Bar color to black programmatically如何以编程方式将状态栏颜色更改为黑色
【发布时间】:2017-10-09 11:22:06
【问题描述】:

关于这个主题的帖子很多,但我找不到有效的。

我有一个未嵌入导航控制器的视图控制器。我想把状态栏颜色改成黑色。

这是我最近的尝试How to set Status Bar Style in Swift 3

  1. 在 info.plist 中更改行视图基于控制器的状态栏外观并将其设置为 NO
  2. appDelegate.swift 在 didFinishLaunchingWithOptions UIApplication.shared.statusBarStyle = .lightContent 中的变化

【问题讨论】:

    标签: swift3 statusbar


    【解决方案1】:
    1. 在 info.plist 中添加“查看基于控制器的状态栏外观” - 是。

    2. 如果您希望默认视图控制器状态栏变亮,请在 info.plist 中添加“状态栏样式” - UIStatusBarStyleLightContent。

    3. 将preferredStatusBarStyle 覆盖为默认/浅色,如下所示:

      class UIExampleViewController: UIViewController {
      
        override var preferredStatusBarStyle: UIStatusBarStyle {
        return .lightContent
        }
      
      }
      

    【讨论】:

    • 恐怕我已经试过了。返回值应该是.default,它返回dark,但即使这样也没有运气。奇怪。
    • 添加基于视图控制器的状态栏外观 - 在您的 info.plist 中是。
    • 我也已经这样做了。我在 XCode 8.3 上,所以我很确定这不是一个错误。
    • 您确定您完成了上述所有三个步骤吗?并且viewcontroller swift文件已连接到您的xib?另外,请确保在重试之前 CMD 清理您的项目。
    • Raxel.. 我刚刚注意到了。当您覆盖时,您指定的是 var 而不是 func?
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-08-16
    • 1970-01-01
    • 1970-01-01
    • 2014-03-16
    • 1970-01-01
    相关资源
    最近更新 更多