调整UITableView for iPhone 5的大小

时间:2014-03-06 11:19:50

标签: ios iphone uitableview autolayout

如何使UITableView高度适应iPhone 4英寸屏幕?我有以下配置,适用于iPhone 4.但是在iPhone 5上(见下图)有一个空白区域,因为tableview没有重新设置。 tableview是可滚动的。

我已启用autolaout,我尝试为所有视图和tableview定义水平和垂直间距约束,但我得到相同的结果(见下图)。有什么建议吗?

enter image description here

enter image description here

这个viewcontroller放在占位符中,因为我创建了一个自定义菜单。我尝试使用以下代码在父视图中设置占位符的常量。也没有工作,tableview被裁剪。

-(void) viewDidLoad{
      if([[UIScreen mainScreen] bounds].size.height == 568) //iPhone 4inch
        {
            NSLog(@"iphone5");
             self.dynamicTVHeight.constant = 465;
            [self.placeholder needsUpdateConstraints];
        }
        else{
            NSLog(@"iphone4");
            self.dynamicTVHeight.constant = 375;
            [self.placeholder needsUpdateConstraints];
        }

这些是我的父视图的约束,它实现了自定义导航菜单。我做了两次测试:

具有垂直和水平间距约束: enter image description here

我的占位符中有高度限制:

enter image description here

2 个答案:

答案 0 :(得分:0)

您需要将bottomSpaceToContainer(或底部布局)设置为0。

确保您的nib文件中没有警告或错误(由UITableView上的黄色或红色标记表示)。如果没有,请确保您具有完全描述UITableView位置所需的所有4个约束。

答案 1 :(得分:0)

你想要什么:

enter image description here

enter image description here

比较iphone 4和iphone 5:

enter image description here

希望这会有所帮助=)