我正在尝试设置约束以在静态表格 View 单元格中获取多行标签,但显然这对我不起作用,标签仍在单行中。我已将 numberOfLines 属性设置为 0,并将高度约束设置为大于或等于。我在 tableView:heightForRowAtIndexPath 中正确设置了单元格的高度。请查看我的屏幕截图以了解 IB 中的设置。
Best Answer-推荐答案 strong>
在您提到的上述评论中,您当前没有设置 preferredMaxLayoutWidth 。此属性告诉您的标签,它应该将其文本布置在该属性值的宽度上。在 UILabel.h 中:
If nonzero, this is used when determining -intrinsicContentSize for multiline labels
换句话说,如果您不设置,标签的内在内容大小就是标签绘制其文本所需的任何宽度。如果将此属性设置为标签的边界,它将在下一行开始绘制(否则,如果 numberOfLines 为 0,它将切断文本。
在你的情况下,我可能会在 tableView:willDisplayCell:forRowAtIndexPath: 中这样做。
关于ios - 具有自动布局的多行 UILabel 不起作用,我们在Stack Overflow上找到一个类似的问题:
https://stackoverflow.com/questions/23064004/
|