如何以编程方式获取UINavigationBar.navigationItem的高度?

Chr*_*isP 23 uinavigationitem ios

我创建一个自定义UIToolbar为使用UIViewUINavigationBar.navigationitem.titleView属性.我想通过获取.navigationitem的当前高度而不是硬编码来将工具栏高度调整为.navigationitem的高度.有没有办法获得身高值?

Abe*_*ada 47

不确定这是否是你需要的.

self.navigationController.navigationBar.frame.size.height

  • 非常"干净" - 德米特法的典型做法!:-)这不是你的错,Apple设计了它.我只是指出它看起来多么糟糕...... (3认同)
  • 不会一直工作..有时导航栏会有一定的高度(在我的情况下为44)但是它会有一个(私有的,即你无法通过UIKit的apis访问它)更大的子视图(在我的情况下, _UINavigationBarBackground.UIBackdropView.UIView高度为64).. (3认同)