首次加载时某些单元格的UITableViewCell高度错误

时间:2015-09-21 06:31:39

标签: objective-c uitableview nslayoutconstraint ios-autolayout uitableviewautomaticdimension

我正在使用UITableViewAutomaticDimension来计算我的表格视图单元格的高度。这对我来说可以。但对于某些单元格,返回的高度为44而不是动态计算高度。但是在向上滚动回到相同的单元格时,高度会被重新计算得很完美。所以我想我没有任何错误的约束,因为在我手动滚动并校正所有单元格高度后,之后不再显示约束破坏警告。

修改

下面给出的是图片的截图(裁剪后搞砸了,但可以从个人资料图片中看到问题。)。正确计算第一个单元格高度。但其余的都是错误的。 enter image description here

2 个答案:

答案 0 :(得分:1)

我添加了以下内容,一切正常。

(CGFloat)tableView:(UITableView *)tableView estimatedHeightForRowAtIndexPath:(NSIndexPath *)indexPath {
    return UITableViewAutomaticDimension;
}

答案 1 :(得分:0)

就我而言,layoutMarginsGuide顶部和底部锚点有问题。我将其用于单元格子视图,并将preservesSuperviewLayoutMargins = true设置为其子视图。当系统尝试使用systemLayoutSizeFitting首次计算像元高度时,这会导致错误。