我遇到了关于UICollectionView的问题。以下代码是用于返回获取给定点(CGPoint)处的单元格:
CollectionViewCell* cell = (CollectionViewCell*) [mCollectionView cellForItemAtIndexPath: [mCollectionView indexPathForItemAtPoint:point]];
if (cell)
NSLog(@"Cell exists");
else
NSLog(@"Cell doesn't exist");
如果UICollectionView保持静止,这将返回一个有效的单元格。 如果向下滚动,则返回nil。 我不确定问题出在哪里。 UICollectionView滚动正常运作,没有集合视图单元格的问题。
请问有人可以帮我解决这个问题吗?
cellForItemAtIndexPath:
文档: "在相应的索引路径处的单元格对象,或者如果单元格不可见或indexPath超出范围,则为nil。" - Matthias BauchindexPath
是否符合预期。在滚动之前和之后进行测试。我猜测您可能会给出相对于错误视图的CGPoint
。您可能需要将该点转换为相对于其他视图。 - Gavin