gpt4 book ai didi

ios - 链接collectionview的performBatchUpdates

转载 作者:行者123 更新时间:2023-12-03 04:13:34 35 4
gpt4 key购买 nike

链接 performBatchUpdate 调用 UICollectionView 的正确方法是什么,以便一个更新在下一个更新开始之前完成,以防止同时触发多个更新,从而导致IndexPaths 不同步(由于删除与插入混合在一起)

最佳答案

我不太确定您在这里寻找什么。如果您的意思是如何确保多个线程在执行 performBatchUpdate 时不会相互覆盖,则应确保对 performBatchUpdate 的所有调用都在主线程上调用。例如:

DispatchQueue.main.async {
collectionView.performBatchUpdates({
// perform a bunch of updates.
}, completion: { (finished: Bool) in
// anything that needs to happen after the update is completed.
}
}

或者,如果您正在寻找一种在同一线程中多次调用 performBatchUpdates 的方法(是的,您需要这个有点奇怪,但我有一个地方需要由于我正在使用第 3 方 API),由于 performBatchUpdates 具有完成功能,您可以尝试将第二个 performBatchUpdates 调用放入第一个的完成处理程序中。

    self.collectionView.performBatchUpdates({
// perform a bunch of updates.
}, completion: { (finished: Bool) in
self.collectionView.performBatchUpdates({
// perform a bunch of other updates.
}, completion: { (finished: Bool) in
})
})

关于ios - 链接collectionview的performBatchUpdates,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43313848/

35 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com