UITableView和自动高度

时间:2015-05-08 03:43:37

标签: uitableview swift autolayout

好的,我有一个UITableView和一个自定义UITableViewCell。此自定义单元格的标题低于该子标题,低于UIImageView(宽高比适合),低于该按钮。现在标题将始终是一行文本,因此唯一具有不同高度的元素是UIImageView。现在我已经分配了以下约束:

title label - top space 8px, left space 8px, right space 8px

sub-title label - top space 10px, left space 8px, right space 8px

image - top space 20px, left space 8px, right space 8px

button - top space 8px, left space 8px, bottom space 40px

现在我没有给图像视图一个高度或宽度约束,因为图像的大小会有所不同。我也确定会从细胞顶部到底部创建一系列约束。我还设置了postTable.rowHeight = UITableViewAutomaticDimension来自动调整细胞高度,并给出了相当高的估计值。

但是,当我运行应用程序时,图像视图的顶部和底部有大量空间。这很奇怪,因为我将图像上的约束设置为低于子标题标签20px,并且我将按钮上的约束设置为低于图像8px,这不会发生在所有情况下。这可能是什么问题?我上面发布的约束是整个视图的唯一约束。

1 个答案:

答案 0 :(得分:1)

好的,所以想通了,对于任何偶然发现这个问题的人来说,图像方面适合模式会抛出单元格高度计算。您需要做的是在设置UIViewImage.image之前手动应用约束。

有关详细信息,请参阅此处:Auto-Layout: Get UIImageView height to calculate cell height correctly

相关问题