本文介绍了SWIFT:在IOS13+上设置StatusBar颜色(使用statusBarManager)的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我想通过代码定义我的状态栏的颜色,就像我发现的那样,但它已被弃用。有人知道做这件事的新方法是什么吗?我的所有代码中都有此警告
此代码工作正常,但出现警告
任何人想要的代码:
class AppDelegate: UIResponder, UIApplicationDelegate {
func application(_ application: UIApplication, didFinishLaunchingWithOptions launchOptions: [UIApplication.LaunchOptionsKey: Any]?) -> Bool {
UIApplication.shared.statusBarStyle = UIStatusBarStyle.lightContent
return true
}
推荐答案
使用警告中提到的UIStatusBarManager
,您也无法设置样式。
因为statusBarManager
是Get Only属性。勾选Here
open var statusBarStyle: UIStatusBarStyle { get }
您必须覆盖preferredStatusBarStyle
像这样
class ViewController: UIViewController {
override var preferredStatusBarStyle: UIStatusBarStyle {
return .lightContent
}
}
如果要将状态栏样式更改为所有视图控制器,可以在Info.plist
中进行设置。
View controller-based status bar appearance
键并设置No
值
<key>UIViewControllerBasedStatusBarAppearance</key>
<false/>
第二步:添加Status bar style
键并设置样式如Light Content
<key>UIStatusBarStyle</key>
<string>UIStatusBarStyleLightContent</string>
如果您想要基于控制器的不同样式, 步骤1: 添加
View controller-based status bar appearance
键并设置Yes
值
<key>UIViewControllerBasedStatusBarAppearance</key>
<true/>
第2步:在视图控制器内覆盖preferredStatusBarStyle
。
override var preferredStatusBarStyle: UIStatusBarStyle {
return .lightContent
}
这里有一篇关于How to set status bar style的好文章。
这篇关于SWIFT:在IOS13+上设置StatusBar颜色(使用statusBarManager)的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持编程学习网!
本站部分内容来源互联网,如果有图片或者内容侵犯您的权益请联系我们删除!