我觉得这可能是一个普遍的问题,并且想知道是否有任何共同的解决方案.
基本上,我的UITableView具有每个单元格的动态单元格高度.如果我不在UITableView和我的顶部tableView.reloadData(),向上滚动变得有点跳跃.
我相信这是因为我重新加载数据,因为我正在向上滚动,UITableView会重新计算每个进入可见性的单元格的高度.如何缓解这种情况,或者如何仅将数据从某个IndexPath重新加载到UITableView的末尾?
此外,当我设法一直滚动到顶部时,我可以向下滚动然后向上滚动,没有跳跃没问题.这很可能是因为已经计算了UITableViewCell高度.
我正在使用iOS 8自我调整单元(tableView.rowHeight = UITableViewAutomaticDimension和tableView:estimatedHeightForRowAtIndexPath:)组合.它很有效,直到我开始在单元格内输入内容.当我正在键入时,我正在调用beginUpdates/ endUpdatespair来调整我的单元格大小(文本视图随着我的输入而增长,并且在我删除时缩小)但是每次调用都会导致跳转到表格视图的顶部.如果我删除beginUpdates/ endUpdatespair然后它不会跳转但我的单元格不会在我键入时调整大小.
以下是该问题的演示:

如何在键入而不跳到表格视图的顶部时,如何让我的单元格正确调整大小?我只针对iOS> = 8,所以我不需要任何iOS 7兼容性.