自定义UITabBarController移到顶部,留下白色区域

时间:2011-10-13 12:58:12

标签: ios uitabbarcontroller uitabbar

我有一个自定义UITabBarController并在viewDidLoad中使用setFrame我将tabBar移动到屏幕顶部。这很好用。

Interface Builder我已按下XIB文件中的元素(按钮,标签等),以便顶部有tabBar的空间。我确保将Bottom Bar设置为none(在检查器的模拟指标中),并确保UIView的高度为480。

当我测试它时,tabBar按预期位于顶部,但是视图会被截断到标签栏通常所在的位置。即使背景UIImage也没有显示出来。它只是白色。如何增加viewController的帧大小? 我尝试在setFrame的{​​{1}}中更改[self view] viewDidLoad添加subview命令,但这并不能解决问题。

由于

1 个答案:

答案 0 :(得分:0)

UITabBarController自动设置活动视图控制器的帧。
您可以尝试之后修改视图的框架或尝试为所有视图设置clipSubviews = NO
也许您想尝试在viewDidAppear:或其他地方执行以下操作(尝试!)。希望在标签栏控制器修改后改变视图的框架。

dispatch_async(dispatch_get_main_queue(), ^(void){
    [self.view setFrame:CGRectMake(0,0,320,480);
});