我试图将我的 Swift 应用程序中的状态栏颜色更改为白色,但遇到了障碍。我有 3 个 ViewControllers,每个都嵌入在 NavigationController 中(这可能是问题所在吗?我已经尝试将代码放在 NavigationController 类中。)我已经在我的 AppDelegate 的 didFinishLaunchingWithOptions 中尝试了以下两段代码.swift 文件,但均无效。
application.statusBarStyle = .LightContent
和
UIApplication.sharedApplication().statusBarStyle = .LightContent
所有文档不得不说的是 UIBarButtonStyle 是一个 Int 并给了我这个枚举片段,它对我的实现完全没有帮助。
enum UIStatusBarStyle : Int {
case Default
case LightContent
case BlackOpaque
}
我错过了什么?
最佳答案
你有两个选择。
如果您想继续手动设置状态栏的样式,请继续您正在做的事情,但您需要将以下键添加到您的 info.plist 文件中,值为 NO
.
View controller-based status bar appearance
或者,如果您想继续使用基于 View Controller 的状态栏外观,而不是设置应用程序的 statusBarStyle,请在您要为其指定的每个 View Controller 中覆盖 preferredStatusBarStyle
属性状态栏样式。
swift 3
override var preferredStatusBarStyle: UIStatusBarStyle {
return .lightContent
}
swift 2
override func preferredStatusBarStyle() -> UIStatusBarStyle {
return UIStatusBarStyle.LightContent
}
关于ios - UIStatusBarStyle 不适用于 Swift,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24235401/