为什么添加单元格时表格视图中的单元格会调整大小?

时间:2014-12-12 12:48:58

标签: ios objective-c uitableview constraints

所以我几个小时都遇到了这个问题。我正在使用nib文件中的自定义UITableViewCell。非常简单的应用程序,创建一个具有名称,序列号和$的随机项。项目显示在表格中。我编辑了xib文件中自定义单元格的约束。所有线条都是蓝色,显示效果很好。只是当我点击添加项目时,上面所有项目的单元格变小并挤压在一起,这就打破了约束。当我点击添加时,只是不知道为什么单元格会改变大小!如果我单击一个单元格以获取详细信息,然后返回到表格视图屏幕,则将再次正确格式化单元格。希望有人可以帮忙!

我发布了代码文件的链接:http://ge.tt/74OIim62/v/0?c

这是来自(Big Nerd Programming Ranch Book)

1 个答案:

答案 0 :(得分:2)

您没有实现所需的UITableView方法之一:

- (CGFloat) tableView:(UITableView *)tableView heightForRowAtIndexPath:(NSIndexPath *)indexPath
{
    return 80.0f;
}

或者通过执行以下操作将rowHeight设置为固定值:

- (void)viewDidLoad {
    ...
    self.tableView.rowHeight = 80.0f;
    ...
}

或者您需要将UITableView设置为自动计算高度(在iOS 8中推荐和最方便)。

- (void)viewDidLoad {
    ....
    self.tableView.estimatedRowHeight = 80.0f;
    self.tableView.rowHeight = UITableViewAutomaticDimension;
    ...
}