Zso*_*olt 5 core-data uitableview nsfetchedresultscontroller diffabledatasource uitableviewdiffabledatasource
当我拥有较大的数据集(大约 22,000 个项目)时,我会遇到可比较数据源的性能问题。令我惊讶的是,当动画打开时,应用快照需要花费如此多的时间。请参阅代码部分:
let shouldAnimate = tableView.numberOfSections != 0
apply(snapshot as NSDiffableDataSourceSnapshot<String, NSManagedObjectID>, animatingDifferences: shouldAnimate)
Run Code Online (Sandbox Code Playgroud)
注意: Jesse Squires 提供了一个很好的资源:
我的问题是,考虑到应用快照是 O(n) 操作,我是否遗漏了某些内容或可区分数据源无法更快地处理此问题?
关闭动画,与 相同reloadData,会有一定帮助。
示例代码是由很棒的SwiftLee基于这篇文章设置的。
请参阅此处的示例项目。
示例视频在这里。
更新(2021 年 9 月 2 日):这里有一个很好的 Twitter 讨论。
旁注:示例应用程序可以通过不设置来改进,fetchBatchSize因为请求与NSFetchedResultsController. 请参阅链接。
| 归档时间: |
|
| 查看次数: |
1011 次 |
| 最近记录: |