IOS7 状态栏高度获取错误

IOS 7 get the wrong status bar height

我试过 ios 7 当设备在 swift 中旋转时状态栏的高度不正确。我已经测试了 IPad Air (ios 7.0) 和 IPhone 6 (ios 8.2)。有什么办法可以得到正确的状态栏高度吗?

问题编码(它得到self.view.bounds.size.width):

let status_height = UIApplication.sharedApplication().statusBarFrame.size.height

旋转时状态栏高度会发生变化,所以

选项 1

先检查statusBarOrientation

UIApplication.sharedApplication().statusBarOrientation.

纵向时使用这个

let status_height = UIApplication.sharedApplication().statusBarFrame.size.height

横向时使用这个

 let status_height = UIApplication.sharedApplication().statusBarFrame.size.width

选项 2 将其转换为正确的坐标 在ViewController你想要得到高度

     var statusBarFrame = self.view.window?.convertRect(UIApplication.sharedApplication().statusBarFrame, fromView: self.view)
     var height = statusBarFrame?.height