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

Ios 如何更改状态栏背景的颜色?,ios,swift,xcode,Ios,Swift,Xcode,当我在文本中向下滚动状态栏时,它看起来非常糟糕 我可以将状态栏背景设置为灰色或深色,并使状态栏的文本变亮吗?将此代码添加到应用程序中 func application(_ application: UIApplication, didFinishLaunchingWithOptions launchOptions: [UIApplication.LaunchOptionsKey: Any]?) -> Bool { UINavigationBar.appearance().barS

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


我可以将
状态栏
背景设置为灰色或深色,并使
状态栏的文本
变亮吗?

将此代码添加到应用程序中

func application(_ application: UIApplication, didFinishLaunchingWithOptions launchOptions: [UIApplication.LaunchOptionsKey: Any]?) -> Bool {
    UINavigationBar.appearance().barStyle = .blackOpaque
    return true
}
或者在你的信息列表中使用

或者在特定的视图中

override func viewDidAppear(_ animated: Bool) {
    super.viewDidAppear(true)

    navigationController?.navigationBar.barStyle = .blackOpaque
}
用于视图控制器

override var preferredStatusBarStyle: UIStatusBarStyle {
    return .lightContent
}

将此代码添加到appDelegate中

func application(_ application: UIApplication, didFinishLaunchingWithOptions launchOptions: [UIApplication.LaunchOptionsKey: Any]?) -> Bool {
    UINavigationBar.appearance().barStyle = .blackOpaque
    return true
}
或者在你的信息列表中使用

或者在特定的视图中

override func viewDidAppear(_ animated: Bool) {
    super.viewDidAppear(true)

    navigationController?.navigationBar.barStyle = .blackOpaque
}
用于视图控制器

override var preferredStatusBarStyle: UIStatusBarStyle {
    return .lightContent
}

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

覆盖变量preferredStatusBarStyle:UIStatusBarStyle{
return.lightContent
}
枚举UIStatusBarStyle:Int

  • 案例
    默认值:
    一个黑暗状态栏,用于照明 背景
  • 案例
    lightContent:
    一个灯光状态栏,用于黑暗环境 背景
  • 案例
    darkContent:
    一个黑暗状态栏,用于照明 背景
如果要同时更改状态栏的背景色,可以执行以下操作:

if#可用(iOS 13.0,*){
让statusBarView=UIView(框架:view.window?.windowScene?.statusBarManager?.statusBarFrame??cRect.zero)
statusBarView.backgroundColor=背景颜色
view.addSubview(statusBarView)
}否则{
//对早期版本的回退
让statusBarView=UIView(框架:UIApplication.shared.statusBarFrame)
statusBarView.backgroundColor=背景颜色
view.addSubview(statusBarView)
}

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

覆盖变量preferredStatusBarStyle:UIStatusBarStyle{
return.lightContent
}
枚举UIStatusBarStyle:Int

  • 案例
    默认值:
    一个黑暗状态栏,用于照明 背景
  • 案例
    lightContent:
    一个灯光状态栏,用于黑暗环境 背景
  • 案例
    darkContent:
    一个黑暗状态栏,用于照明 背景
如果要同时更改状态栏的背景色,可以执行以下操作:

if#可用(iOS 13.0,*){
让statusBarView=UIView(框架:view.window?.windowScene?.statusBarManager?.statusBarFrame??cRect.zero)
statusBarView.backgroundColor=背景颜色
view.addSubview(statusBarView)
}否则{
//对早期版本的回退
让statusBarView=UIView(框架:UIApplication.shared.statusBarFrame)
statusBarView.backgroundColor=背景颜色
view.addSubview(statusBarView)
}

这一个更改导航栏,我指的是手机状态,电池状态和其他内容,直到更改我的导航栏视图。如果您没有指定要使用的内容,我更新了答案这一个更改导航栏,我的意思是手机的状态,电池状态和其他东西直到改变我的导航栏视图,你不知道你在用什么,我更新了我的answer@LeoDabus重复问题为您提供状态栏文本的答案,这不是将背景颜色更改为颜色。@LeoDabus复制问题为您提供状态栏文本的答案,而是,这不是将背景颜色更改为颜色。