新的刷新的方法为 apply,通过使用 apply 方法无需计算变更的 indexPaths,也无需调用 reload,即可安全地在主线程或后台线程更新 UI, 仅需简单的将需要变更后的数据通过 NSDiffableDataSourceSnapshot enum Section: CaseIterable { case main } var snapshot = NSDiffableDataSourceSnapshot<Section, City
first case second } extension ViewController { func updateList() { var snapshot = NSDiffableDataSourceSnapshot
first case second } extension ViewController { func updateList() { var snapshot = NSDiffableDataSourceSnapshot
NSDiffableDataSourceSnapshot:UITableView 的状态。 apply(_:animatingDifferences:):当要显示或更新数据时,通过调用 NSDiffableDataSourceSnapshot 对象的 apply 方法将其提供给数据源,该方法将比较当前显示的快照 enum Section: CaseIterable { case main } // 获取NSDiffableDataSourceSnapshot var snapshot = NSDiffableDataSourceSnapshot first case second } extension ViewController { func updateList() { var snapshot = NSDiffableDataSourceSnapshot
typealias DataSource = UICollectionViewDiffableDataSource<Category, Video> typealias Snapshot = NSDiffableDataSourceSnapshot