UITabBar子视图的Y坐标

时间:2011-06-07 23:10:32

标签: iphone uiview uiviewcontroller

我正在创建UIViewController的自定义子类(没有nib),我正在推送到UINavigationController堆栈。在我的UIViewController子类(loadViewviewDidLoadinit?初始化期间的某个地方?我想在视图的底部添加UITabBar子视图。问题在于找出Y坐标。据我所知,视图在loadViewviewDidLoadinit之后的某个位置调整大小,因此我无法获得调整大小的高度以便计算其Y坐标UITabBar。

找出包含视图高度的正确方法是什么,以便我可以将UITabBar固定在底部?

1 个答案:

答案 0 :(得分:1)

您需要做的是将UITabBar设置到视图的底部,然后告诉它留在那里如果超级视图的边界发生变化。

这不是太棘手。例如,在viewDidLoad中将标签栏正常分配/初始化,并将其定位如下:

tabBar.frame = CGRectMake(self.view.frame.size.height-tabBar.frame.size.height, 0,
                          tabBar.frame.size.height, tabBar.frame.size.height);
[self.view addSubview:tabBar];

...将栏添加到视图的底部。

到目前为止一直很好:你的问题是当superview改变高度时,tabbar不会保持锁定在底部。为了解决这个问题,我们设置了一个自动调整模板:

tabBar.autoresizingMask = UIViewAutoresizingMaskTopMargin;

...这将有效地将栏锁定在超级视图的底部。