为UITableViewCell动态设置高度的最佳方法

时间:2018-10-07 18:23:24

标签: ios swift uitableview

我有一个UITableView,其中包含可以显示视频,html和图像以及音频播放UI的单元格。实际上,这是3个不同的单元,它们在任何给定的时间点都可能位于tableView中。相同类型的单元可以具有不同的高度。那就是我要解决的问题。在我看过的所有教程中,没有一个教我如何设置计算然后动态设置高度。我仅阅读了一些内容,向您展示了如何使用具有静态高度的不同单元格来进行tableView。关于如何解决此问题有什么建议吗?

1 个答案:

答案 0 :(得分:1)

在表格视图单元格中为单元格项目应用自动布局,并将其与顶部和底部绑定,并使用estimatedHeightForRowAt作为:

func tableView(_ tableView: UITableView, estimatedHeightForRowAt indexPath: IndexPath) -> CGFloat {
    return UITableViewAutomaticDimension
}

或者您可以手动将不同行的高度设置为:

func tableView(_ tableView: UITableView, heightForRowAt indexPath: IndexPath) -> CGFloat {
    return 50 // rather than 50 return height you need to set
}