UICollectionView reloadItemsAtIndexPaths时 报错

在刷新下载进度时 Xcode报错误:

Terminating app due to uncaught exception 'NSInternalInconsistencyException', reason: 'Invalid update: invalid number of items in section 0.  The number of items contained in an existing section after the update (107) must be equal to the number of items contained in that section before the update (109), plus or minus the number of items inserted or deleted from that section (1 inserted, 1 deleted) and plus or minus the number of items moved into or out of that section (0 moved in, 0 moved out).

 in [PhotoViewController fileDownloadingWithProgress:fileName:andType:]

解决方案:

1. 要么更新下载进度的时候,不更新数据源;

2. 要么更新数据源不更新下载进度;在更新数据源前后设置一个能否更新下载的标志,更新下载时检查该标志即可

3. 用reloadData 代替reloadItems,但是开销比较大

原文地址:https://www.cnblogs.com/Apple2U/p/5611884.html