如何在集合视图中获取装饰视图的实例?

hzw*_*wzw 1 ios uicollectionview

我已经使用自定义布局实现了一个UICollectionView.我知道如何为整个集合视图呈现视觉装饰,但不知道如何为每个部分呈现不同的图像.我需要通过indexPath获取装饰视图的实例.我在Apple Document上发现了这个:

使用此方法为集合视图中的装饰视图创建布局属性对象.装饰视图是一种补充视图,但不显示由集合视图的数据源管理的数据.相反,它们主要为一个部分或整个集合视图提供视觉装饰.

由您决定如何使用indexPath参数来标识给定的装饰视图.通常,您使用decorationViewKind参数来标识装饰视图的类型和indexPath信息,以区分该视图的不同实例.

谁可以告诉我如何详细地做到这一点?

非常感谢!

hzw*_*wzw 9

回答我自己的问题!谢谢你的这篇文章!

首先,子类UICollectionViewLayoutAttributes并添加您想要的任何属性.

其次,在函数中layoutAttributesForDecorationViewOfKind(elementKind: String, atIndexPath indexPath: NSIndexPath) -> UICollectionViewLayoutAttributes!,设置属性.

第三,在UICollectionReusableView类中,重写函数applyLayoutAttributes:以获取UICollectionViewLayoutAttributes包含属性的自定义实例.

完成!