ios - 可展开的 UItableview 内容高度在展开或折叠期间不同

标签 ios swift uitableview

我通过多个部分分隔创建了一个可扩展的表格 View 。因为这个 TableView 位于容器 View 内,所以每次 TableView 展开或折叠时我都需要更新容器 View 大小。

我使用 tableview.contentsize.height 更新容器大小,但我发现展开或折叠时内容大小不同。

例如,假设有 4 个部分,如果我折叠第 3 和第 4 部分,表格 View 将返回 200 的高度。同时,如果我仅展开表格第 1 和第 2 部分,而第 3 和第 4 部分折叠,则内容size高度超过200。

我发现非常沮丧,为什么程序给我提供如此令人困惑的信息,因为我需要适当的内容大小高度来更新容器 View 。这里有人可以启发我吗?

最佳答案

不要使用 contentSize 尝试自行计算高度。如果每个单元格的高度都相同,那就容易多了。假设它们的高度均为 50,第 1 部分有 1 行,第 2 部分有 3 行。(1 + 3) * 50 = 容器高度。显然,如果您有部分和插图,您还需要将其包含在计算中。

如果您的单元格高度不同,只需调用表格 View 单元格高度委托(delegate)即可获取相关高度。

如果这对您不起作用,请提供更多描述性并添加一些代码。

关于ios - 可展开的 UItableview 内容高度在展开或折叠期间不同,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51047213/

相关文章:

ios - 如何让失败案例快速通过 Xcode UITests?

ios - 如何获得 UITableView 单元格中 UIButton 的绝对 x,y

ios - 苹果登录使用安卓

iphone - EKEventStore 中没有源

ios - 无法访问核心数据文件

swift - 使用 Swift 中的什么函数作为另一个函数的参数来计算 x 的 K 次方?

ios - Xcode 更改我的应用程序的定位服务

swift - Podspec 不验证没有错误

iphone - UITableView 更改标题标题颜色

ios - UITableView 与 UITextView 滚动问题