UIStatusBar样式更改+ Xcode 10 + iOS 12

本文将帮助您使用Xcode 10或更高版本来更改UIStatusBar样式。 之前我们使用App.app()。statusBarStyle = .default更改UIStatusBar的外观。 从iOS 9.0开始不推荐使用。

现在让我们检查如何更改UIStatusBar样式。

步骤1:

创建单个视图应用程序,在Info.plist中添加一个参数“ 基于视图控制器的状态栏外观 ”,并将其设置为“ NO ”。

第2步:

我们必须重写“ preferredStatusBarStyle ”并调用“ setNeedsStatusBarAppearanceUpdate ”以更改我们的状态栏样式。

例如:覆盖var preferredStatusBarStyle:UIStatusBarStyle {return .default}

setNeedsStatusBarAppearanceUpdate()

让我们尝试通过2个按钮操作来更改状态栏的颜色。

在我们的ViewController中定义一个变量

var isDefault:Bool = false

在情节提要中的View Controller中添加2个名为Black和White的按钮,并为它们创建相应的IBAction。

@IBAction func black(_ sender:Any){

isDefault = true

setNeedsStatusBarAppearanceUpdate()

}

@IBAction func white(_ sender:Any){

isDefault =假

setNeedsStatusBarAppearanceUpdate()

}

这就对了。 现在,该应用程序将通过按钮操作更改状态栏颜色。