当单元格的高度不同时,如何在表格视图中获取所有单元格的高度?
Posted
技术标签:
【中文标题】当单元格的高度不同时,如何在表格视图中获取所有单元格的高度?【英文标题】:how to get all the cells height in tableview when the cells are of different height? 【发布时间】:2018-03-21 13:25:29 【问题描述】:我找到了如下所示的获取可见单元格高度的选项,但是如何获取所有单元格高度
let cells = self.tableView.visibleCells
for cell in cells
heightOfTableView += cell.frame.height
【问题讨论】:
检查 cell.tableview.contentsize 使用 min(tableview.contentsize, tableView.frame.height) . 你说所有单元格是什么意思?所有在表格视图上可见的内容或滚动时应该绘制的项目数? @karthikeyan 工作 检查 cell.tableview.contentsize.height 【参考方案1】:这是不可能的。 UITableView 只保留可见的单元格。一旦它们滚动出可见区域,它们就会被丢弃。
您可能想要的是继承自 UIScrollView
的 contentSize.height
。
【讨论】:
【参考方案2】:您可以使用任何固定的单元格高度来返回恒定值,对于可变高度使用AutomaticDimension
。
func tableView(_ tableView: UITableView, heightForRowAt indexPath: IndexPath) -> CGFloat
if indexPath.row == 0
return 160
else
return UITableViewAutomaticDimension
func tableView(_ tableView: UITableView, estimatedHeightForRowAt indexPath: IndexPath) -> CGFloat
if indexPath.row == 0
return 160
else
return UITableViewAutomaticDimension
【讨论】:
再次阅读问题,这与该问题无关以上是关于当单元格的高度不同时,如何在表格视图中获取所有单元格的高度?的主要内容,如果未能解决你的问题,请参考以下文章