ios - 如何更改状态栏背景的颜色?

标签 ios swift xcode

<分区>

当我在文本中向下滚动状态栏时,它看起来非常糟糕

enter image description here

我能否将状态栏的背景设为灰色或深色,而状态栏的文本设为浅色?

最佳答案

状态栏的样式可以更改为内容为白色的状态栏。转到 ViewController.swift 文件并添加以下代码行。

override var preferredStatusBarStyle: UIStatusBarStyle {
    return .lightContent
}

enum UIStatusBarStyle : Int

  • case default : 深色状态栏,用于亮灯 背景。
  • case lightContent : 浅色状态栏,用于深色 背景。
  • case darkContent : 深色状态栏,用于亮色 背景。

如果想一起改变状态栏的背景色,可以进行如下操作:

    if #available(iOS 13.0, *) {
        let statusBarView = UIView(frame: view.window?.windowScene?.statusBarManager?.statusBarFrame ?? CGRect.zero)
        statusBarView.backgroundColor = backgroundColor
        view.addSubview(statusBarView)
    } else {
        // Fallback on earlier versions
        let statusBarView = UIView(frame: UIApplication.shared.statusBarFrame)
        statusBarView.backgroundColor = backgroundColor
        view.addSubview(statusBarView)
    }

关于ios - 如何更改状态栏背景的颜色?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59217475/

上一篇:ios - UIView 上的 CollectionView 单元实例(委托(delegate)之外)无法快速运行 5

下一篇:android - 如何在 react-native 中滑动平面列表中的组件?

相关文章:

ios - 用渐变描边画一个圆

ios - Swift:如何有选择地将函数作为参数传递并调用函数?

swift - Swift 是否有任何内置的 Bool 反向函数?

ios - 我们可以用 App 委托(delegate)旧的核心数据方法代替新的核心数据 xcode 8.3 方法吗

ios - 应用 Retina 4 外形规范按钮不起作用

ios - Xcode 7 iOS 应用程序无法在设备上运行

ios - Xcode UI 测试 - UITableView 部分

swift uitableview 仅显示用户数组的不同值

ios - Swift:如何使viewWillTransition仅影响横向的iPhone

Xcode Bots 不会在成功/失败时发送电子邮件