【问题标题】:setting status bar font color to black in certain views iOS9在某些视图iOS9中将状态栏字体颜色设置为黑色
【发布时间】:2016-08-18 02:36:50
【问题描述】:

所以我不确定我做错了什么,但其他问题的答案不起作用。我希望我的应用在除 3 之外的所有视图上都有浅色文本。我将 plist 键设置为 NO,并且我在常规设置中的部署信息中将 Status Bar Style 设置为浅色。在我想要黑色状态栏字体的几个屏幕中,我添加了

override func preferredStatusBarStyle() -> UIStatusBarStyle {
    return UIStatusBarStyle.Default
}

直接来自 Apple 的 UIApplication

public enum UIStatusBarStyle : Int {

    case Default // Dark content, for use on light backgrounds
    @available(iOS 7.0, *)
    case LightContent // Light content, for use on dark backgrounds
}

那么为什么覆盖功能对我不起作用?

【问题讨论】:

    标签: ios swift swift2 ios9


    【解决方案1】:

    如果你想使用preferredStatusBarStyle,你必须在info.plist中将View controller-based status bar appearance设置为YES,但最好尝试在你想变黑的屏幕的viewDidLoad上使用UIApplication.sharedApplication().setStatusBarStyle(.Default, animated: false),然后设置回@ 987654326@ 在其viewDidDisapear 中,这种方式更简单更干净

    【讨论】:

    • 这不起作用,这只会让一切变黑。如果我使用你的 .setStatusBarStyle,它在 plist 中仍然是 YES 吗?我还收到了使用preferredStatusBarStyle的折旧警告
    • 如果你使用setStatusBarStyle ,在.plist中应该是NO
    • 顺便说一句,尝试调用self.setNeedsStatusBarAppearanceUpdate() 并设置一些断点,如果您执行第一种方式,则查看该行是否被调用
    猜你喜欢
    • 2014-08-31
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-04-21
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多