Ios 重新加载集合视图时伪单元格重新排序
我正在重新加载一个集合视图,单元重用顺序似乎是不确定的 这本身并不是一个问题,但我正在使用SDWebImage异步加载图像,并使用GPUImage对其进行过滤(据我所知,GPUImage也可以异步工作)。结果是令人讨厌的闪烁,即使在集合视图内容没有更改时也是如此,因为它几乎总是交换相邻的单元格 当然,我可以添加一些具有后处理图像的同步内存缓存,因此图像是在配置单元之前设置的,而不是稍后的回调,但这是以不必要的复杂性增加为代价的,我希望避免这种情况Ios 重新加载集合视图时伪单元格重新排序,ios,uicollectionview,Ios,Uicollectionview,我正在重新加载一个集合视图,单元重用顺序似乎是不确定的 这本身并不是一个问题,但我正在使用SDWebImage异步加载图像,并使用GPUImage对其进行过滤(据我所知,GPUImage也可以异步工作)。结果是令人讨厌的闪烁,即使在集合视图内容没有更改时也是如此,因为它几乎总是交换相邻的单元格 当然,我可以添加一些具有后处理图像的同步内存缓存,因此图像是在配置单元之前设置的,而不是稍后的回调,但这是以不必要的复杂性增加为代价的,我希望避免这种情况 是否有一种方法可以在不重新使用集合视图单元格的情
是否有一种方法可以在不重新使用集合视图单元格的情况下“就地”重新加载单个集合视图单元格?应该使用批处理更新来插入和删除单个行,而不是完全重新加载。它将现有单元保持在适当的位置 之前 之后 缺点是刷新逻辑可能变得更加复杂,因为您需要区分以前的数据源和当前的数据源
[collectionView reloadData];
[collectionView performBatchUpdates:^() {
// Use insertItemsAtIndexPaths, deleteItemsAtIndexPaths,
// insertSections, deleteSections
// to add and delete sections and rows
} completion:nil];