我试图实现一个按钮,将我的应用背景从白色变为黑色以及状态栏的颜色。现在我有
@IBAction func buttonTapped(_ sender: Any) {
self.view.backgroundColor = UIColor.black
UIApplication.shared.statusBarStyle = .lightContent
}
这似乎不起作用。有没有人知道如何在不重新加载整个视图的情况下更改状态栏字体的颜色?
答案 0 :(得分:2)
如果要设置状态栏样式,应用程序级别,请在UIViewControllerBasedStatusBarAppearance
文件中将NO
设置为.plist
。
如果您要在视图控制器级别设置状态栏样式,请按照以下步骤操作:
UIViewControllerBasedStatusBarAppearance
文件中将YES
设置为.plist
。 在viewDidLoad添加功能 - setNeedsStatusBarAppearanceUpdate
覆盖视图控制器中的preferredStatusBarStyle。
-
override func viewDidLoad() {
super.viewDidLoad()
self.setNeedsStatusBarAppearanceUpdate()
}
override var preferredStatusBarStyle: UIStatusBarStyle {
return .lightContent
}