如何在Swift 3中设置状态栏样式

如何在Swift 3中设置状态栏样式,第1张

如何在Swift 3中设置状态栏样式 [更新]适用于Xpre 10+和Swift 4.2+

这是iOS 7及更高版本的首选方法

在您的应用程序

Info.plist
,将设置
View controller-based status bar appearance
YES

在每个视图控制器中覆盖

preferredStatusBarStyle

(Apple文档)。例如:

override var preferredStatusBarStyle: UIStatusBarStyle {return .lightContent}

如果

preferredStatusBarStyle
根据视图控制器内部发生的更改返回了不同的首选状态栏样式(例如,滚动位置或显示的图像是否暗),那么您将需要
setNeedsStatusBarAppearanceUpdate()
在状态更改时调用。

iOS 7之前的版本,不建议使用的方法

苹果已弃用此功能,因此将来会删除它。使用上述方法,以便在下一个iOS版本发布时不必重写它。

如果您的应用程序将支持在您的应用程序中

Info.plist
,请设置
View controller-based status barappearance
NO

appDelegate.swift
didFinishLaunchingWithOptions
功能,加上:

UIApplication.shared.statusBarStyle = .lightContent

对于导航控制器

如果您使用导航控制器,并且希望使用每个视图控制器的首选状态栏样式并将其设置

View controller-based status barappearance
YES
应用程序的
info.plist

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


欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/zaji/5008097.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2022-11-15
下一篇2022-11-14

发表评论

登录后才能评论

评论列表(0条)

    保存