我正在尝试自定义我的 UITableViewCell 并将其子类化,然后按照此线程中的建议重载 layoutSubviews:
我可以通过这种方式更改标签的宽度,但我无法使用以下方法使标签变为多行。
self.textLabel.numberOfLines = 2;
self.textLabel.lineBreakMode = UILineBreakModeWordWrap;
它似乎是自动换行,但无论我的单元格有多高,它都只显示垂直居中的第一行。有什么建议么?
我正在尝试自定义我的 UITableViewCell 并将其子类化,然后按照此线程中的建议重载 layoutSubviews:
我可以通过这种方式更改标签的宽度,但我无法使用以下方法使标签变为多行。
self.textLabel.numberOfLines = 2;
self.textLabel.lineBreakMode = UILineBreakModeWordWrap;
它似乎是自动换行,但无论我的单元格有多高,它都只显示垂直居中的第一行。有什么建议么?
这是我为完成这项工作所做的。不过,我认为这是一种解决方法,因为它看起来应该是 1-2 衬里才能使 UITableViewCell 中的标签执行多行。
基本上,我将 UITableViewCell 子类化,而不是重载 layoutSubviews,而是添加了一个 UILabel 对象,并在请求单元格的 cellForRowAtIndexPath 调用中简单地对其进行初始化。我不使用 UITableViewCell 附带的 textLabel,尽管我确实使用了 detailTextLabel(因为我还不需要调整大小或更改它)。
您只需要将 更改numberOfLines
为 0。这应该可以解决问题。希望你发现了这一点,因为你问已经一年了。
self.textLabel.numberOfLines = 0;
self.textLabel.lineBreakMode = UILineBreakModeWordWrap;