table 单元格出现时 UILabel 未调整大小

UILabel is not resizing when table cell appears

我有一个显示一些标签和图像的自定义 table 视图单元格。 具有可变高度的主标签不会总是调整大小。 当 table 视图首次显示时,可见单元格的标签不会调整大小,但在重新显示后标签将具有正确的大小。

Table 视图单元格高度设置为自动。 我从这里尝试了解决方案:http://www.appcoda.com/self-sizing-cells/ 但没有成功。 标签的行数 = 0; 我调用了 sizeToFit() / setNeedsLayout() 但没有任何变化。

let title = (self.posts[indexPath.row] as JSON) ["title"].stringValue as NSString;
cell.postTitleLabel.preferredMaxLayoutWidth = cell.frame.size.width - 20;
cell.postTitleLabel.text = title as String;
cell.setNeedsLayout();

我读过 here(顺便说一句很棒的文章),您不应该在索引处的行的单元格中执行数据绑定。但在我的例子中,因为我正在为行加载单元格中的一部分数据,而另一部分将显示单元格中的帧正在调整我期望的大小。

所以我移动了行单元格中的所有单元格数据绑定,现在一切正常。