我在TableViewCell中有UILabel,可以有多行文本。我正在使用自动布局并期望单元格适当地扩展它的高度。它在大多数情况下都能很好地工作,但是当UILabel中的文本几乎达到标签的宽度时会发生奇怪的事情。标签似乎过早地扩大了它的高度。
更新:我已将示例项目上传到github: https://github.com/fwaddle/TestBadHeight
如下所示,第一个单元格不应大于第二个单元格。
热门标签限制:
子标签约束:
信息按钮约束
答案 0 :(得分:1)
配置标签的方式存在一些问题。第一件事是您将Content Hugging Priority
的{{1}}修改为252而不是默认值251.这会导致UILabel的默认行为发生变化(意味着它不会调整大小以完全适合它)含量)。
一旦修改了它,你的约束就会产生一些冲突,因为它不能同时满足所有,静态单元格高度和定义单元格高度的垂直约束。
因此,您需要更改故事板中单元格的大小,以使其适用于此特定情况(我尝试了它并且正确的高度,以满足约束为73)或降低优先级其中一个约束(让我们说从SublLabel
到SubLabel
的底部约束)。
结果应该相同,并且应正确计算标签高度。
希望这能解决您的问题。祝好运!
答案 1 :(得分:0)
你在UILabel中有sizeToFit吗?这可能会导致单元格调整大小以适应数字5,并且无法满足您的尾随约束。