7

我的应用程序有一个 tabBarController 作为主控制器,我需要从任何视图控制器获取 tabBar 的高度,以便计算其余元素的正确位置。如何以编程方式获取它?谢谢你。

4

2 回答 2

16

我强烈建议设置您的视图层次结构,以便外部视图由容器视图自动调整大小,然后更具体的内部视图可以检查外部布局视图的边界并在适当的时间适当地布置自己。

但是,如果您的要求使这成为不可能(或者非常复杂,并且您确实需要为所有内容指定点),您可以使用UIViewController'tabBarController属性获取选项卡栏的高度:

// from inside the view controller
CGSize tabBarSize = [[[self tabBarController] tabBar] bounds].size;
于 2012-04-19T16:32:09.940 回答
4

对于Swift使用这个:

let tabBarHeight = tabBarController?.tabBar.bounds.size.height ?? 0

当 tabBarController 不为 nil 时返回 tabBar 高度,否则为 0。

于 2017-02-23T13:32:10.917 回答