iOS

[iOS]TableView单元格动态高度

2020-07-22  本文已影响0人  CnPeng

TableView 中有多种单元格且高度不一致时,为了实现单元格的动态高度,需要做如下设置:

tableView.estimatedRowHeight = 100
tableView.rowHeight = UITableView.automaticDimension

或者直接重写 UITableViewDelegate 代理中的如下方法:

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

上述代码的含义表示,我们需要使用自适应高度,而不是给出具体的值。但是我们需要告诉它一个大概高度,例如上面的100,理论上这个是可以随便写的,并不影响显示结果,但是越接近真实高度越好。

然后要做的事情就是 为单元格的内容做好垂直方向的约束,让 tableView 能够根据约束信息推断出单元格的高度。也就是说,在约束中单元格内容的高度需要明确,且与单元格根视图的间距约束也必须明确。

上一篇下一篇

猜你喜欢

热点阅读