我正在UILabel
内设置多行UITableCell
。
UILabel
具有比例width
作为参考设备的屏幕(带有乘数)。它内部的文本可以更改,因此当文本的宽度高于UILabel
宽度的空间时,我需要适应能够多线的UILabel
。
我尝试使用:
myLabel.lineBreakMode = .byWordWrapping
myLabel.numberOfLines = 0
myLabel.sizeToFit()
但它总是显示在一行上,截断溢出UILabel
宽度的文本。
如何让我的UILabel成为多线?
编辑:我无法在文本中添加细分,因为我从数据库中检索文本。
提前致谢!
答案 0 :(得分:1)
这两行是自动计算单元格高度所必需的。将它们放在viewDidLoad中。
self.tableView.estimatedRowHeight = 50.0
self.tableView.rowHeight = UITableViewAutomaticDimension
答案 1 :(得分:0)
如果希望标签从一行切换到多行,则必须在字符串文本中使用\ n或换行符char指定换行符,或者可以为标签的宽度设置约束,或者您可以为标签设置前导和尾随约束。如果其中一个方法已完成,则标签将显示为达到最大行数所需的行数,如果设置为0则为无限。
答案 2 :(得分:0)
最后我能够使我的多线UILabel添加此代码:
self.tableView.estimatedRowHeight = 50.0
并减少multiplier
值。看来文本无法适应UITableCell
的高度。