如何使用按钮更改状态栏的颜色?
How do you change the colour of the status bar with a button?
我正在尝试实现一个按钮,将我的应用程序的背景从白色更改为黑色以及状态栏的颜色。现在我有
@IBAction func buttonTapped(_ sender: Any) {
self.view.backgroundColor = UIColor.black
UIApplication.shared.statusBarStyle = .lightContent
}
这似乎不起作用。有谁知道无需重新加载整个视图即可更改状态栏字体颜色的方法吗?
如果您想设置状态栏样式,应用程序级别然后在您的.plist
文件中将UIViewControllerBasedStatusBarAppearance
设置为NO
。
如果您想在视图控制器级别设置状态栏样式,请按照以下步骤操作:
- 如果您只需要在 UIViewController 级别设置状态栏样式,请在
.plist
文件中将 UIViewControllerBasedStatusBarAppearance
设置为 YES
。
在viewDidLoad中添加函数——setNeedsStatusBarAppearanceUpdate
在您的视图控制器中覆盖 preferredStatusBarStyle。
-
override func viewDidLoad() {
super.viewDidLoad()
self.setNeedsStatusBarAppearanceUpdate()
}
override var preferredStatusBarStyle: UIStatusBarStyle {
return .lightContent
}
根据状态栏样式设置级别设置.plist的值。
我正在尝试实现一个按钮,将我的应用程序的背景从白色更改为黑色以及状态栏的颜色。现在我有
@IBAction func buttonTapped(_ sender: Any) {
self.view.backgroundColor = UIColor.black
UIApplication.shared.statusBarStyle = .lightContent
}
这似乎不起作用。有谁知道无需重新加载整个视图即可更改状态栏字体颜色的方法吗?
如果您想设置状态栏样式,应用程序级别然后在您的.plist
文件中将UIViewControllerBasedStatusBarAppearance
设置为NO
。
如果您想在视图控制器级别设置状态栏样式,请按照以下步骤操作:
- 如果您只需要在 UIViewController 级别设置状态栏样式,请在
.plist
文件中将UIViewControllerBasedStatusBarAppearance
设置为YES
。 在viewDidLoad中添加函数——
setNeedsStatusBarAppearanceUpdate
在您的视图控制器中覆盖 preferredStatusBarStyle。
-
override func viewDidLoad() {
super.viewDidLoad()
self.setNeedsStatusBarAppearanceUpdate()
}
override var preferredStatusBarStyle: UIStatusBarStyle {
return .lightContent
}
根据状态栏样式设置级别设置.plist的值。