iOS 13:UICollectionViewCompositionLayout的缓存?

iOS 13:UICollectionViewCompositionLayout的缓存?,ios,swift,uicollectionview,uicollectionviewlayout,wwdc,Ios,Swift,Uicollectionview,Uicollectionviewlayout,Wwdc,在全新且非常整洁的UICollectionViewCompositionalLayout中,uiCollectionViewLayoutAttribute如何在初始创建时缓存 由于新布局类继承自UICollectionViewLayout,因此所有已知的方法和属性似乎都在板上 回顾“旧的”自定义UICollectionViewLayout方法,据我所知,这样一个任务的路径是使用prepare()方法用定制的[UICollectionViewLayoutAttribute]填充(n)个数组 据我所

在全新且非常整洁的
UICollectionViewCompositionalLayout
中,
uiCollectionViewLayoutAttribute
如何在初始创建时缓存

由于新布局类继承自
UICollectionViewLayout
,因此所有已知的方法和属性似乎都在板上

回顾“旧的”自定义
UICollectionViewLayout
方法,据我所知,这样一个任务的路径是使用prepare()方法用定制的
[UICollectionViewLayoutAttribute]
填充(n)个数组

据我所知,新的layout类通过WWDC19对话中的
createLayout()
方法逐节创建布局,返回
->NSCollectionLayoutSection
。它似乎只在初始化时这样做一次

现在,我将一个
UICollectionViewCompositionalLayout
子类化,该类返回
layoutAttributesForElements

override func layoutAttributesForElements(in rect: CGRect) -> [UICollectionViewLayoutAttributes]? {
        let superAttributes = super.layoutAttributesForElements(in: rect)
        print("I am returning attributes: ", supersAttributes)
        return superAttributes
}
但是,由于它们不是手动创建的,我在哪里可以一次捕获这些属性以添加到缓存数组

这条路径的原因是我正在尝试重新创建一个非常非常高的collectionViewLayout,我需要缩放它。而这只有通过使用缓存、在缩放期间修改缓存属性以及在整个生命周期中从缓存返回
layouttributesforements(in:rect)
才能实现(至少在过去是这样)。 我在Ray Wenderlich的tuturials和其他地方见过这种技术

任何输入都将是伟大的!让我们有一些有趣的了解新的和更容易的世界争吵收集意见

非常感谢你的阅读