自我调整特定的 UITableView 单元格

Self sizing specific UITableView Cell

我知道如何在 UITableView 中使 UITableViewCells 自己调整大小。问题是如何只有一个特定的单元格自身大小。我的 table 中有四个不同的自定义 UITableView 单元格,我只想让一个单元格自己调整大小。

您可以根据return dinamicHeigth 和 func tableView(_ tableView: UITableView, heightForRowAt indexPath: IndexPath) -> CGFloat return UITableViewAutomaticDimension 根据

检查您需要哪个单元格

使用第 0 行作为条件的示例代码

func tableView(_ tableView: UITableView, heightForRowAt indexPath: IndexPath) -> CGFloat {

        if(indexPath.row == 0)
        {
            return UITableViewAutomaticDimension
        }

        return 88
    }

您必须知道要为哪些行实施 UITableViewAutomaticDimension 因为当调用 heightForRowAt 时,尚未创建任何单元格,因此您无法检查单元格类型这就是为什么您需要检查 indexPath.row 的原因。

例如这样的事情:

switch indexPath.row {
case 0:
    return 100
case 1,2,3:
    return UITableViewAutomaticDimension
default:
    return 100
}