iOS 9中的状态栏颜色错误iPad滑动和拆分视图

时间:2015-09-18 16:37:14

标签: ios ipad ios9 splitview

我的应用使用白色状态栏。当我从主屏幕启动应用程序(即应用程序全屏显示)时,这可以正常工作。

如果,当我的应用程序仍处于全屏状态时,我会滑过第二个应用程序(例如日历),状态栏仍为白色。如果我然后在我的应用程序和日历之间使用拆分视图,状态栏将保持白色。这一切都正常。

但是,如果第一个全屏应用程序是日历(或任何其他应用程序),我使用幻灯片浏览来查看我的应用程序,状态栏将变为黑色。如果我继续使用拆分视图,状态栏仍显示为黑色。最后,如果我将我的应用程序一直向左拖动以使其全屏显示,状态栏将正确变为白色。

总结一下:当全屏显示另一个应用并使用“幻灯片放映”或“拆分视图”查看我的应用时,状态栏会显示错误的颜色。

这是iOS 9的错误还是我错过了什么?我无法在文档中找到任何声明在幻灯片放映/拆分视图的其他地方声明状态栏颜色的内容。

谢谢!

2 个答案:

答案 0 :(得分:2)

我通过创建一个继承自UISplitViewController的新类并将其指定为拆分视图控制器的类来解决此问题。在此类中,重写方法preferredStatusBarStyle,如下所示

    override func  preferredStatusBarStyle()-> UIStatusBarStyle {
        return UIStatusBarStyle.LightContent
    }

实际上并不理解为什么这样做有效,而改变故事板中的值并不起作用。

答案 1 :(得分:0)

Swift 3版本:

覆盖var preferredStatusBarStyle:UIStatusBarStyle {     返回.lightContent }