相关疑难解决方法(0)

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

我正在使用Xcode 8.0 beta 4.

在以前的版本中,UIViewController具有设置状态栏样式的方法

public func preferredStatusBarStyle() -> UIStatusBarStyle
Run Code Online (Sandbox Code Playgroud)

但是,我发现它在Swift 3中改为"Get ONLY varaiable".

public var preferredStatusBarStyle: UIStatusBarStyle { get } 
Run Code Online (Sandbox Code Playgroud)

如何在我的UIViewController中提供使用的样式?

uiviewcontroller ios uistatusbar swift ios-statusbar

174
推荐指数
20
解决办法
17万
查看次数

在Swift 4中动态更改状态栏颜色

我想改变状态栏的颜色之间.lightContent.default动态(因为我的背景可以在同一个视图控制器改变).

我试图为此创建一个看起来像这样的函数:

func changeStatusBar(useDefault: Bool) {
    if useDefault {
        var preferredStatusBarStyle: UIStatusBarStyle {
            return .default
        }
    } else {
        var preferredStatusBarStyle: UIStatusBarStyle {
            return .lightContent
        }
    }
    setNeedsStatusBarAppearanceUpdate()
}
Run Code Online (Sandbox Code Playgroud)

但没有运气.我在网上找到的每个指南(或者在Stackoverflow上)都只显示了如何更改statusBar,而不是通过函数打开和关闭.

我也设置View controller-based status bar appearanceNO了在info.plist文件中.

我以前使用的UIApplication.shared.statusBarStyle = .lightContent那条线是- 但是因为自iOS9以来不推荐使用它,所以我再也不能使用它了.

任何人都知道如何动态更改它?

ios swift

7
推荐指数
2
解决办法
1万
查看次数