我的情况就是:
分了3个组,根据状态,往每个组添加数据,后台会优先按顺序返回的,我的tableView发生了上拉加载更多时,跳动问题,这个跳到的效果找了好久的原因,我原先以为是,使用[self.tableView reloadData] 会刷新整个列表,可能我后面加载后面组的数据时,estimatedSectionHeaderHeight\estimatedRowHeight\estimatedSectionFooterHeight的问题因为我对tableView的调用机制没进行过仔细的研究,就以为是加载新的header和footer 刷新整个列表会造成闪动,其实并不是这样,如果你是按分组顺序,往下继续加载更多,那么数据也只会加载到后面的分组里面,前面分组的cell数量如果不变的话,并不会造成跳动问题,如果你加载到第二个分组,并且显示第二个分组,这个时候你往第一个分组动态添加数据时,就会跳动,显而易见第一个分组数据多了,原先你显示的位移1000是第二个分组的某个cell下, 这时候会显示在第一个分组的某个cell下,会造成跳动问题。
具体事例就是下面这个意思, 不同颜色代表不同分组的cell,假设每个cell一样高度的情况下, 第一张图显示的是第二个分组的2个cell和第三个分组的1个cell,这时候如果在第一个分组中动态添加数据的话,如果使用[self.tableView reloadData]刷新就会跳动,第三个画面的那个cell位置。