我使用名为PSCollectionVIew的自定义UIScrollView,现在我必须知道哪些单元格当前可见。但似乎没有这种方法。
我有什么方法可以自己实现它吗?
我需要它在这里使用它
- (void)scrollViewDidEndDecelerating:(UIScrollView *)scrollView{}
谢谢gda
答案 0 :(得分:0)
您不应该使用名为CollectionView的ScrollView。这真令人困惑。它使人们认为你的类是UICollectionView的子类,而它只是一个UIScrollView。我建议你重构这个名字。
这很重要,因为在UICollectionView上你有一个名为
的存取器- (NSArray *)visibleCells
在您自己创建和定位项目时,在UIScrollView上,您需要自己创建。
请注意,集合视图通过重用单元格而不是分配每个视图来处理内存管理。您应该考虑使用UICollectionView,但如果由于某种原因您不需要,则必须由您自己执行visibleViews(没有单元格,因为它是UIScrollView)。
您应该迭代每个子视图并使用CGRectIntersectsRect测试框架是否与scrollView边界(可见矩形)相交