关于 ios:UITableView 插入动画而不滚动的行

UITablleView insert rows animated without scrolling

我已经实现了一个包含多个部分的 TableView 以及每个部分中的部分标题和部分页脚。当用户录制一个单元格时,会以动画方式插入更多单元格。
为了实现这一点,我更新了数据模型并调用

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

在最上面的行上,这可以按预期工作:添加的行具有动画效果,并且 tableview 的内容是恒定的。在最后一个单元格上,tableview 滚动到上一部分的顶部或上一部分的页脚顶部。

为什么插入行时表格视图会滚动?如何在保持动画的同时防止滚动?


解决这个问题的主要方法是不使用 insertRowsAtIndexPaths。而是尝试使用 reloadSections 以保持动画。