我有一个 UICollectionView (单行,垂直对齐)和一个与它关联的 UIPageControl

UIPageControl 的点数将作为我的收藏视图中的项目数。

我想在按下一个点时更改/滚动集合的位置查看
此外,我想根据集合视图的滚动来更改选定的点。

关于scrollViewDidScroll方法的某种算法的想法也可以实现吗?

提前致谢

最佳答案

我有一个简单的解决方案。
scrollViewDidScroll方法下,只需检查屏幕中间的可见单元格即可:

CGRect visibleRect = (CGRect){.origin = self.collectionView.contentOffset, .size = self.collectionView.bounds.size};
CGPoint visiblePoint = CGPointMake(CGRectGetMidX(visibleRect), CGRectGetMidY(visibleRect));
NSIndexPath *visibleIndexPath = [self.collectionView indexPathForItemAtPoint:visiblePoint];
[self.pageControl updateStateForPageNumber: (int)visibleIndexPath.row];

关于ios - 带有UICollectionView/TableView的UIPageControl,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/24495057/

10-14 23:22