【发布时间】:2015-08-15 23:33:10
【问题描述】:
我已经尝试了一切来解决这个问题,包括在 if 语句中检查搜索控制器是否处于活动状态,然后将导航栏的色调更改为白色,并将状态栏样式设置为浅色内容。我该如何解决这个问题?
【问题讨论】:
我已经尝试了一切来解决这个问题,包括在 if 语句中检查搜索控制器是否处于活动状态,然后将导航栏的色调更改为白色,并将状态栏样式设置为浅色内容。我该如何解决这个问题?
【问题讨论】:
有几个选项,这可能是一个错误的问题,但与此同时,您是否尝试过:
选项 1:
info.plist,在你的info.plist中设置“状态栏样式”的选项,这是一个字符串值,值为“UIStatusBarStyleLightContent”
另外,在您的 infor.plist 中,设置变量“查看基于控制器的状态栏外观”并将其值设置为“否”
然后,在应用程序的每个视图控制器中,在初始化程序、ViewWillAppear 和 ViewDidLoad 中显式声明以下命令
UIApplication.sharedApplication().statusBarStyle = UIStatusBarStyle.LightContent
选项 2:
在您的 info.plist 中,将“状态栏样式”选项设置为“UIStatusBarStyleLightContent”。此外,在您的 infor.plist 中,设置变量“基于控制器的状态栏外观”并将其值设置为“YES”
然后,在每个视图控制器中放置以下方法
override func preferredStatusBarStyle() -> UIStatusBarStyle {
return UIStatusBarStyle.LightContent;
}
override func prefersStatusBarHidden() -> Bool {
return false
}
此外,您可能需要执行以下操作:
self.extendedLayoutIncludesOpaqueBars = true
另外,我为你翻译成 Swift 代码
【讨论】: