UINavigationBar框架高度返回44.0但实际上是64.0

mat*_*eok 2 xcode uinavigationbar ios uistoryboard swift

我在故事板中有一个UINavigationController,它没有使用AutoLayout.在状态栏可见的情况下,UINavigationBar的实际高度为64.0,而当我记录时,self.navigationBar.frame.size.height我得到44.0.如何获得UINavigationBar的实际高度?

我正在使用Xcode 7.3和iOS 6的故事板构建.

Ras*_*n L 6

高度UINavigationBar44.得到64的原因是因为你的状态栏是可见的,它的高度为20.

更新:
要计算高度,您可以:

let height = Double(UIApplication.shared.statusBarFrame.height) + Double(self.navigationController!.navigationBar.frame.height)
Run Code Online (Sandbox Code Playgroud)