UITableView内容大小不合适

时间:2017-11-16 11:30:44

标签: ios swift uitableview uiscrollview contentsize

我有UITableView用于显示聊天消息列表。我使用5种不同的动态高度。最小单元高度从20到maxHeight(约1000 px)。 UITable视图单元格动态高度由“self.messageTableView.rowHeight = UITableViewAutomaticDimension”设置。

  1. 应该常见的估计行高。
  2. 重新加载UITableView后,内容大小无法正常显示。如果用户滚动,则内容大小会增加。

2 个答案:

答案 0 :(得分:0)

仅将rowHeight设置为自动维度是不够的。您还需要为单元子视图安装适当的约束,以便单元格可以根据约束计算其高度。

答案 1 :(得分:0)

要使用UITableViewAutomaticDimension进行动态高度计算,请确保

1 - 正确添加对单元格的前导,尾随,顶部和底部约束,不会产生任何冲突

2 - 在UITableViewDelegate的 cellForRowAt 方法中添加 cell.layoutIfNeeded()

3 - 您可以将任何高度指定为estimatedRowHeight, 44 是默认值,但您也可以给出20(最小值)。