ios – 具有自调整大小的UITableView insertRowsAtIndexPaths更改contentOffset

前端之家收集整理的这篇文章主要介绍了ios – 具有自调整大小的UITableView insertRowsAtIndexPaths更改contentOffset前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我尝试构建一个talbleview,其中每一行都可以在点击时显示子列表.为此,我更新Datamodel并调用

[self.tableView insertRowsAtIndexPaths:addedIndexPaths withRowAnimation:(UITableViewRowAnimationTop)];

动画在行可见时发生.
添加的单元格在动画后正确显示,但动画制作视图时有时会向上滚动.这种情况尤其发生在tableview的最后一部分.此表格视图总是在表格中向上滚动,直到插入单元格上方的单元格顶部可见.

我想在可见动画期间修复contentoffset.
我尝试在开始更新和结束更新中设置上下文偏移,但这不起作用,因为动画会向上滚动,您会看到内容滚动回到位.

我使用自动布局来使单元格自我调整大小.

在插入可见单元格时,如何保持tableview的内容偏移量不变?

解决方法

我想出了这个问题.
自我调整是根本原因.

不要使用自我调整大小只需删除这些行:

tableView.estimatedRowHeight = 123

– (CGFloat)tableView:(UITableView *)tableView estimatedHeightForRowAtIndexPath:(NSIndexPath *)indexPath {

猜你在找的iOS相关文章