如何在使用tableViews自定义单元格时在运行时更改表视图单元格高度?

问题描述 投票:0回答:2

我有主tableView M,它有X个单元格,每个x都有子tableView S,有N个单元格。我使用estimatedRowHeight和UITableViewAutomaticDimension来创建动态单元格高度。问题是,如何强制M表视图重新布局并更改x单元格的高度以适应运行时S tableView的内容大小?

here is an image of what i want to implement

ios swift uitableview uicollectionview
2个回答
0
投票

我认为您需要在表格视图M中手动计算每个单元格(每个X单元格)的高度。首先在每个X单元格中查找tableView S的高度。

计算TableView S的高度:

高度=细胞数*每个细胞的高度(N)

X格的高度=高度

注意:这里你提到你也在使用UITableViewAutomaticDimension for tableView S.因此,您需要根据其中的内容找到每个单元格N的高度。 E,g:如果要在单元格N中加载字符串,只需根据字符串长度计算标签高度,然后通过添加适当的间距高度和标签高度来提供单元格N高度。

谢谢。


0
投票

您必须在表视图M中手动计算每个单元格的高度,然后找出tableView S的高度与N个单元格的高度。

  1. 得到S的tableview.contentSize.height
  2. 将此contentSize赋予M的单元格X.
  3. 现在得到M的tableview.contentSize.height

制作两个单独的方法,通过单元格获取tableview的高度,并将它们写入tableview的“cellAtRow”委托中。 (制作自动布局的高度约束的iboutlet)。只需在运行时需要更改时重新加载表。

© www.soinside.com 2019 - 2024. All rights reserved.