如何在 UIView/Utility class 中获取 Swift 中的导航栏
How do I get Navigation Bar in UIView/Utility class in Swift
实际上我需要在自定义视图中获取导航栏 class。我可以在我的视图控制器中获取导航栏高度 class。如何在 UIView/Utiity common class 中获取导航栏高度? .我只有一个视图控制器并在其中添加了导航控制器 class。我想在任何自定义视图中访问该导航栏高度。
// works in view controller
var navigationBarHeight: CGFloat {
return UIApplication.shared.statusBarFrame.size.height +
(self.navigationController?.navigationBar.frame.height ?? 0.0)
}
您可以通过以下方式获取导航栏的高度:
guard let rootVC = UIApplication.shared.keyWindow?.rootViewController as? UINavigationController else { return }
let navigationBarHeight = rootVC.navigationBar.frame.height
实际上我需要在自定义视图中获取导航栏 class。我可以在我的视图控制器中获取导航栏高度 class。如何在 UIView/Utiity common class 中获取导航栏高度? .我只有一个视图控制器并在其中添加了导航控制器 class。我想在任何自定义视图中访问该导航栏高度。
// works in view controller
var navigationBarHeight: CGFloat {
return UIApplication.shared.statusBarFrame.size.height +
(self.navigationController?.navigationBar.frame.height ?? 0.0)
}
您可以通过以下方式获取导航栏的高度:
guard let rootVC = UIApplication.shared.keyWindow?.rootViewController as? UINavigationController else { return }
let navigationBarHeight = rootVC.navigationBar.frame.height