Evg*_*ban 2 uinavigationcontroller ios
在我的一个控制器中我使用自定义工具栏,我想在ios中获得默认工具栏(导航栏)的高度.我用过宏#define NAVBAR_HEIGHT self.navigationController.navigationBar.frame.size.height.
但是,当控制器没有嵌入导航堆栈时,宏返回零.
我不想使用44的常量,因为它可能在其他Apple设备上有所不同.
对于标签栏,我使用:
+(CGFloat)getTabBarHeight{
UITabBarController *tabBarController = [UITabBarController new];
CGFloat tabBarHeight = tabBarController.tabBar.frame.size.height;
return tabBarHeight;
}
Run Code Online (Sandbox Code Playgroud)
有没有这样的片段,所以我可以返回导航控制器工具栏的值?
Dav*_*røm 11
我不确定Objective C - 但是在Swift 3/4中你可以做到
func getNavBarHeight() -> CGFloat {
return self.navigationController?.navigationBar.frame.size.height
}
Run Code Online (Sandbox Code Playgroud)
这要求您将视图控制器嵌入到UINavigationController中.如果你没有这个,你可以这样做:
func getNavBarHeight() -> CGFloat {
let nav = UINavigationController()
return nav.navigationBar.frame.size.height
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
4708 次 |
| 最近记录: |