ios - 未调用 PreferredStatusBarStyle
<p><p>好吧,我在这里疯了。这是我的代码:</p>
<p><strong>.plist</strong></p>
<pre><code><key>UIViewControllerBasedStatusBarAppearance</key>
<true/>
</code></pre>
<p><strong>覆盖</strong></p>
<pre><code>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
}
}
</code></pre>
<p><strong> ViewController </strong></p>
<pre><code>override var preferredStatusBarStyle: UIStatusBarStyle {
return .lightContent
}
</code></pre>
<p>我已经哭到要更新了:</p>
<pre><code>override func viewWillAppear(_ animated: Bool) {
super.viewWillAppear(animated)
setNeedsStatusBarAppearanceUpdate()
}
</code></pre>
<p>我知道以前有人问过并回答过这个问题,而且我已经浏览了平台上的大部分答案(如果不是全部的话),但没有一个可以提供帮助。我不知道该怎么办了。 <em>请帮忙:(</em> </p>
<p><strong><em>哦,我也试过了</em></strong></p>
<pre><code>navigationController?.navigationBar.barStyle = .black
</code></pre>
<p>没有调用任何覆盖方法。
<strong>谢谢</strong></p></p>
<br><hr><h1><strong>Best Answer-推荐答案</ strong></h1><br>
<p><p>请试试这个,它会帮助你。
在 AppDelegate 类的 <code>didFinishLaunchingWithOptions</code> 方法中写这个。</p>
<pre><code>UIApplication.shared.statusBarStyle = UIStatusBarStyle.lightContent
</code></pre>
<p>这可能对你有帮助,谢谢。</p></p>
<p style="font-size: 20px;">关于ios - 未调用 PreferredStatusBarStyle,我们在Stack Overflow上找到一个类似的问题:
<a href="https://stackoverflow.com/questions/54090035/" rel="noreferrer noopener nofollow" style="color: red;">
https://stackoverflow.com/questions/54090035/
</a>
</p>
页:
[1]