相关疑难解决方法(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万
查看次数

我们如何在iOS 9中为整个应用程序设置Status Bar的Light Content样式?

我想将Light Content样式应用于整个应用程序.

在没有替换方法的情况下,iOS 9中不推荐使用以下方法.

-setStatusBarStyle:动画:

设置状态栏的样式,可选择设置过渡到新样式的动画.

在以下工作AppDelegate:

Swift 1.2代码:

UIApplication.sharedApplication().setStatusBarStyle(UIStatusBarStyle.LightContent, animated: true)
Run Code Online (Sandbox Code Playgroud)

但是当我将项目升级到iOS 9/Swift 2时,他们会给我一个警告信息:

<Error>: CGContextSaveGState: invalid context 0x0. If you want to see the backtrace, please set CG_CONTEXT_SHOW_BACKTRACE environmental variable.
<Error>: CGContextTranslateCTM: invalid context 0x0. If you want to see the backtrace, please set CG_CONTEXT_SHOW_BACKTRACE environmental variable.
<Error>: CGContextRestoreGState: invalid context 0x0. If you want to see the backtrace, please set CG_CONTEXT_SHOW_BACKTRACE environmental variable.
Run Code Online (Sandbox Code Playgroud)

因此,根据苹果论坛的解决方案和来自此答案的CGContextSaveGState:无效上下文0x0仅在设备上出错

因此,我已根据解决方案UIViewControllerBasedStatusBarAppearanceinfo.plist文件中删除了该属性.

现在情况是我们如何在iOS 9中为整个应用程序设置Status …

objective-c ios uistatusbar swift

11
推荐指数
1
解决办法
9092
查看次数