【发布时间】:2015-11-09 05:01:36
【问题描述】:
我有一个日历,其中包含集合视图中的每个月。当您向下滚动时,它会以网格形式显示每个月(因此它看起来像日历),每个月之间都有填充。
我想更新屏幕顶部的标签以更改为您正确关注的月份。因此,当您滚动时,当您越过屏幕上的某个点时,它会在顶部从一个月变为另一个。
例如,我在顶部并且标签上写着“一月”,然后我向下滚动到我在二月的位置(一月的一部分可能仍然在上方可见,三月的一部分可能在下方可见) ,但我希望二月出现在标签上。也许是我指定的一些假想的分界线导致标签更新。
这样的事情可能吗?我该从哪里开始?
谢谢!
【问题讨论】:
-
查看UICollectionView Delegate 类参考。像
collectionView:willDisplayCell:forItemAtIndexPath:这样的东西可以工作。 CollectionViews 也是 UIScrollView 的子类。所以也请查看class reference。 -
基本上你想要一个在用户滚动或新项目可见时调用的函数。 UIScrollViewDelegate 中检测连续滚动的功能非常低效。当新项目可见时触发的 UICollectionViewDelegate 函数将需要一些数学来确定何时更新标签。
-
好的,谢谢!欣赏它:)
标签: ios swift uicollectionview ios9 uicollectionviewlayout