UICollectionView 与从照片中获取的数据源 - 大量照片的缓慢更新
Posted
技术标签:
【中文标题】UICollectionView 与从照片中获取的数据源 - 大量照片的缓慢更新【英文标题】:UICollectionView with data source fetched from Photos - slow updates with big amount of photos 【发布时间】:2015-06-13 11:13:11 【问题描述】:我正在制作the app,用于使用旧的ALAseetLibrary
框架检测照片库中的屏幕截图——如果可以的话,请使用新的照片框架。我的问题是,当用户拥有大型照片库时,查找屏幕截图需要花费大量时间。每次打开应用程序时,我都会更新我的数据源。
这是扫描照片库的代码:
ALAssetsLibraryGroupsEnumerationResultsBlock savedPhotosBlock = ^(ALAssetsGroup *group, BOOL *stop)
if (group)
[group enumerateAssetsUsingBlock:^(ALAsset *result, NSUInteger index, BOOL *stop)
if(result)
ALAssetRepresentation *original = [result defaultRepresentation];
CGSize dimensions = [original dimensions];
这项工作完成后,我打电话给reloadData()
。如何随时更新数据,以便在其数据源更新时与UICollectionView
进行交互?
【问题讨论】:
【参考方案1】:您应该使用 performBatchUpdate 方法。 使用要添加的新 indexPath 创建数组。 调用 insertItemsAtIndexPaths:
而不是重新加载数据
【讨论】:
以上是关于UICollectionView 与从照片中获取的数据源 - 大量照片的缓慢更新的主要内容,如果未能解决你的问题,请参考以下文章
如何在 UICollectionView 中获取选中的 CollectionViewCell?
iOS Swift UICollectionView 照片浏览 - 当单元格不可见时如何停止取消 DispatchQueue