如何在使用tableViews自定义单元格时在运行时更改表视图单元格高度?
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了如何在使用tableViews自定义单元格时在运行时更改表视图单元格高度?相关的知识,希望对你有一定的参考价值。
我有主tableView M,它有X个单元格,每个x都有子tableView S,有N个单元格。我使用estimatedRowHeight和UITableViewAutomaticDimension来创建动态单元格高度。问题是,如何强制M表视图重新布局并更改x单元格的高度以适应运行时S tableView的内容大小?
我认为您需要在表格视图M中手动计算每个单元格(每个X单元格)的高度。首先在每个X单元格中查找tableView S的高度。
计算TableView S的高度:
高度=细胞数*每个细胞的高度(N)
X格的高度=高度
注意:这里你提到你也在使用UITableViewAutomaticDimension for tableView S.因此,您需要根据其中的内容找到每个单元格N的高度。 E,g:如果要在单元格N中加载字符串,只需根据字符串长度计算标签高度,然后通过添加适当的间距高度和标签高度来提供单元格N高度。
谢谢。
您必须在表视图M中手动计算每个单元格的高度,然后找出tableView S的高度与N个单元格的高度。
- 得到S的tableview.contentSize.height
- 将此contentSize赋予M的单元格X.
- 现在得到M的tableview.contentSize.height
制作两个单独的方法,通过单元格获取tableview的高度,并将它们写入tableview的“cellAtRow”委托中。 (制作自动布局的高度约束的iboutlet)。只需在运行时需要更改时重新加载表。
以上是关于如何在使用tableViews自定义单元格时在运行时更改表视图单元格高度?的主要内容,如果未能解决你的问题,请参考以下文章
UIImageView 对齐在初始显示时在 tableview 单元格中关闭,但之后没有
如何在自定义滑动(而不是滑动删除)单元格(滑动到邮件/短信)中点击一个单元格时删除在其他 TableView 单元格中添加的子视图
重用自定义 tableView 单元格时重复显示相同的子视图(Swift 4.1)
从 Tableview 自定义单元格翻转过渡到 UIViewController