Ios 将附加上下文传递到UICollectionViewLayout内的装饰视图

Ios 将附加上下文传递到UICollectionViewLayout内的装饰视图,ios,uicollectionview,uicollectionviewlayout,Ios,Uicollectionview,Uicollectionviewlayout,我有一个自定义布局的UICollectionView,可以显示类似于甘特图的内容。装饰视图用于在集合视图的顶部添加时间线。我需要将NSDate传递到装饰视图以进行显示,但我不确定如何正确执行此操作。苹果的文档说它不应该绑定到数据源,事实并非如此,但我需要给装饰视图一些额外的上下文。我想知道的是: 向装饰视图传递附加上下文(参数/参数)的适当方式是什么?自定义UICollectionViewLayoutAttribute子类是否添加了NSDate属性 这只是对装饰观点的误用吗?我应该使用补充视图

我有一个自定义布局的UICollectionView,可以显示类似于甘特图的内容。装饰视图用于在集合视图的顶部添加时间线。我需要将NSDate传递到装饰视图以进行显示,但我不确定如何正确执行此操作。苹果的文档说它不应该绑定到数据源,事实并非如此,但我需要给装饰视图一些额外的上下文。我想知道的是:

  • 向装饰视图传递附加上下文(参数/参数)的适当方式是什么?自定义UICollectionViewLayoutAttribute子类是否添加了NSDate属性
  • 这只是对装饰观点的误用吗?我应该使用补充视图吗

这听起来像是装饰视图的绝佳使用。将
uiCollectionViewLayoutAttribute子类化以添加日期属性的方法对于在布局和装饰视图本身之间传递该上下文是有意义的。最后一步是向自定义布局添加日期属性之类的内容。当该属性更改时,您将希望使布局无效(理想情况下仅使用
-invalidateLayoutWithContext:
)使装饰视图有机会应用新属性


装饰视图的观点是,集合视图本身并不知道或关心它们的存在。我理解这种情况下的困难,因为可见日期范围与集合视图中的数据相关,但我认为装饰视图在这里完全合适。

您需要提供上下文(数据)这一事实表明这是一个补充视图。我想我不理解装饰视图的观点,它们有什么作用而补充视图没有?