Swift   发布时间:2022-04-30  发布网站:大佬教程  code.js-code.com
大佬教程收集整理的这篇文章主要介绍了swift – iOS – UICollectionView – 一次插入多个项目时,你怎么能一个接一个地淡化它们而不是同时淡化它们?大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。
如果您有一个集合视图并且您通过插入几个来更改项目,则认布局会同时淡出它们.是否有可能一个一个地淡化它们?

我在虑子类化UICollectionViewLayout,但我不确定这是否会像那样工作.

我是否真的必须添加逻辑,以便不会同时发生多个插入? (这样我插入一个项目,等一下,插入第二个项目,…手动完成)必须有更好的方法.我希望

谢谢你的帮助

解决方法

如果你想一次淡出它们,你将不得不在模型中添加一个并重新加载那个项目然后延迟(例如asyncAfter)并执行一个项目.请注意,您不能一次将所有这添加到模型中,只需延迟重新加载集合视图的各个项目.您必须推迟模型的更新和重新加载集合视图的相应项.例如.:

private func append(_ objectstoadd: [Foo]) {
    for i in 0 ..< objectstoadd.count {
        DispatchQueue.main.asyncAfter(deadline: .Now() + Double(i) * 0.25) {
            self.objects.append(objectstoadd[i])
            self.collectionView?.insertItems(at: [IndexPath(item: self.objects.count - 1,section: 0)])
        }
    }
}

产量:

swift – iOS – UICollectionView – 一次插入多个项目时,你怎么能一个接一个地淡化它们而不是同时淡化它们?

不需要UICollectionViewLayout的子类化.

大佬总结

以上是大佬教程为你收集整理的swift – iOS – UICollectionView – 一次插入多个项目时,你怎么能一个接一个地淡化它们而不是同时淡化它们?全部内容,希望文章能够帮你解决swift – iOS – UICollectionView – 一次插入多个项目时,你怎么能一个接一个地淡化它们而不是同时淡化它们?所遇到的程序开发问题。

如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。