我在UITableView
中使用自定义单元格。单元格中有4个视图。 3 UILabel
s和1 UIImageView
(灰色),如下所示。标签文本是动态的,因此宽度和高度是动态的。
此处UIImageView
的宽度取决于2个标签。因此,问题是指定标签和UIImageView
之间的约束,它将决定UIImageView
的宽度。
如果第一个标签的文字很长,会看到会发生什么。
当宽度取决于多个标签的宽度时,如何指定约束?
更新:我尝试将标签的行数设置为0,将内在大小设置为占位符。它也不起作用。下面是它的外观。我尝试将内部宽度和高度设置为无,但是当我为两个标签执行此操作时出现错误,如果仅为一个标签设置,则不会出错。
更新:我更改了属性,下面显示了它们现在的状态以及单元格的显示方式。
单元格:
第一行标签的约束(粉红色):
第二行标签的约束(青色):
答案 0 :(得分:2)
我在尝试了很多事情后解决了这个问题。我唯一要做的就是将水平和垂直内容压缩阻力优先级设置为必需 .i.e。 1000。 我为所有标签做了这个,因为我不希望任何标签修剪它们的内容。
另一件重要的事情是获得正确的细胞高度。如果计算自定义单元格高度时甚至有1pt的错误,则不会按预期显示。
提示:
Yoy可以通过添加/删除您为单元格计算的高度(变量)的常量值来测试高度是否错误。