我在Swift中尝试将状态栏颜色更改为白色时遇到了很多麻烦。我已经检查了所有与此相关的问题,并且解决方案似乎没有正常工作。现在我在info.plist中使用密钥:"查看基于控制器的状态栏外观"设为NO
。在我的AppDelegate.Swift中,我有:
func application(application: UIApplication, didFinishLaunchingWithOptions launchOptions: [NSObject: AnyObject]?) -> Bool {
// Override point for customization after application launch.
UIApplication.sharedApplication().setStatusBarStyle(UIStatusBarStyle.LightContent, animated: false)
return true
}
条形图现在是白色但我在控制台中出错:
错误:CGContextSaveGState:无效的上下文0x0。如果你想查看回溯,请设置CG_CONTEXT_SHOW_BACKTRACE环境变量。*
有没有人设法弄清楚如何干净利落地做到这一点?任何提示都会非常感激!
答案 0 :(得分:2)
如果您想在整个应用中使用轻量级内容,则不需要代码。您已经将“查看基于控制器的状态栏外观”更改为NO
,因此现在您只需在项目导航器窗格中选择项目,然后选择常规选项卡并查找状态栏样式下拉列表 - 它位于“部署信息”部分中,位于“设备方向”下方。
正如您在下面的屏幕截图中看到的那样,只需将其更改为Light即可。
答案 1 :(得分:1)
此问题的答案已弃用。
'setStatusBarStyle(_:animated :)'在iOS 9.0中已被弃用:使用-[UIViewController preferredStatusBarStyle]
像这样使用:
override var preferredStatusBarStyle: UIStatusBarStyle {
return .lightContent
}