【发布时间】:2018-07-12 17:44:36
【问题描述】:
我有一个水平滚动的UICollecitonView。我有一个要求,当用户向右或向左滚动时,屏幕水平中心的集合视图单元格的颜色不同。每次通过中心时,颜色都需要更新。
我们的 UICollectionView 在启动时显示三个UICollectionViewCells,所以“center”定义为第二个UICollectionViewCell 的CGRect。
如何检测?是否有在滚动结束时触发的事件?另外,如何判断一个 CGRect 矩形是否在另一个 CGRect 矩形的边界内?
【问题讨论】:
-
您可以使用
UIScrollViewDelegate中的scrollViewWillEndDragging:withVelocity:targetContentOffset:来确定要居中的单元格。 -
颜色是否需要仅在滚动完成后更新,或者是否需要在每次通过中心时更新?此外,“中心”是定义为单个点 (CGPoint)、范围 (CGRect) 还是恰好离最近点最近的任何单元格?
标签: ios swift uicollectionview