dynamictableViewCell的高度

我有一个内部的标签tableViewCell可能是多行高。 我已经将标签的Lines属性设置为0.但是,当我使标签的文本有多行时,文本被切断。 以下是我设置故事板的方法:

细胞

有人知道我是如何让桌子的单元格高到足以包含标签吗?

设置dynamic细胞高度程序

  1. 从顶部和底部钉住标签。 请参阅下面的屏幕截图

在这里输入图像说明

  1. 从xcode的属性检查器中将标签的行数设置为0 ,也可以从代码中完成请参考下面的截图

在这里输入图像说明

  1. 实现下面提到的表视图的代表

     func tableView(_ tableView: UITableView, heightForRowAt indexPath: IndexPath) -> CGFloat { return UITableViewAutomaticDimension } func tableView(_ tableView: UITableView, estimatedHeightForRowAt indexPath: IndexPath) -> CGFloat { return 50 // also UITableViewAutomaticDimension can be used } 

你错过了从标签到表格视图单元格的底部约束(据我所知)。 为了使自动布局知道单元的高度必须多大,您需要提供这些约束。

另外不要忘记提供estimatedRowHeight到表视图。 如果没有给出该值,自动单元格大小将不起作用。