我有一个 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/