iOS 获取导航栏最下沿的 Y 值
2017-12-01 本文已影响143人
貘鸣
/// 获取当前导航栏最下沿的 y 值(即状态栏的高度加导航栏高度)
/// 这个方法主要用在当导航控制器的 navigationBar 的 isTranslucent 属性是 true(默认),
/// 这样的情况下, 如果自动布局时按子 VC 的 View 最顶端布局的话, 默认会顶入到导航栏内部.
/// 所以计算一个偏移, 用于布局.
///
/// - Parameter navVC: 当前的导航控制器
/// - Returns: 最下沿的 y 值.
public static func getNavBarBottomOffset(navVC: UINavigationController) -> CGFloat {
let statusRect = UIApplication.shared.statusBarFrame
let navBarRect = navVC.navigationBar.frame
return statusRect.height + navBarRect.height
}