OGeek|极客世界-中国程序员成长平台

标题: ios - 未调用 PreferredStatusBarStyle [打印本页]

作者: 菜鸟教程小白    时间: 2022-12-11 21:44
标题: ios - 未调用 PreferredStatusBarStyle

好吧,我在这里疯了。这是我的代码:

.plist

<key>UIViewControllerBasedStatusBarAppearance</key>
<true/>

覆盖

extension UINavigationController {
    open override var childForStatusBarStyle: UIViewController? {
        return topViewController
    }

    open override var childForStatusBarHidden: UIViewController? {
        return topViewController
    }

    open override var preferredStatusBarStyle: UIStatusBarStyle {
        return topViewController?.preferredStatusBarStyle ?? .default
    }
}

extension UITabBarController {
    open override var childForStatusBarStyle: UIViewController? {
        return children.first
    }

    open override var childForStatusBarHidden: UIViewController? {
        return children.first
    }
}

View Controller

override var preferredStatusBarStyle: UIStatusBarStyle {
    return .lightContent
}

我已经哭到要更新了:

override func viewWillAppear(_ animated: Bool) {
    super.viewWillAppear(animated)
    setNeedsStatusBarAppearanceUpdate()
}

我知道以前有人问过并回答过这个问题,而且我已经浏览了平台上的大部分答案(如果不是全部的话),但没有一个可以提供帮助。我不知道该怎么办了。 请帮忙

哦,我也试过了

navigationController?.navigationBar.barStyle = .black

没有调用任何覆盖方法。 谢谢



Best Answer-推荐答案


请试试这个,它会帮助你。 在 AppDelegate 类的 didFinishLaunchingWithOptions 方法中写这个。

UIApplication.shared.statusBarStyle = UIStatusBarStyle.lightContent

这可能对你有帮助,谢谢。

关于ios - 未调用 PreferredStatusBarStyle,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54090035/






欢迎光临 OGeek|极客世界-中国程序员成长平台 (http://ogeek.cn/) Powered by Discuz! X3.4