5

我有一个 UICollectionView 填充了一些单元格,我实现了这个方法- (void)collectionView:(UICollectionView *)collectionView didSelectItemAtIndexPath:(NSIndexPath *)indexPath 这就像一个魅力,但它在滚动时不起作用。这是一个问题,因为滚动非常敏感,因此当我的意思是推动一个单元格并调用该方法时,我最终滚动没有结果。

所以我想知道如何解决这个问题并想出了这个:

  • 我可以简单地将方法设置为在滚动时响应吗?
  • 如果没有 - 我可以简单地让它只有在你使用例如 2 个手指时才会发生滚动?将 2 个动作分开。

提前感谢

4

1 回答 1

6

UICollectionViewCell当您点击它时会选择a 。水龙头应该很短并且在一个地方。如果你滚动,你可能没有点击右。如果是这种情况,那么在使用 Mail 等内置应用程序时也会发生这种情况。

使用UICollectionViewaUITapGestureRecognizer来识别单元格的选择。此手势识别器不允许在这种情况下可能对您有所帮助的特定设置。

您也许可以将UIPanGestureRecognizer2 根手指更改为需要,但您应该真正考虑一下这是否是您想要的。你最好按照苹果的意思使用它,用户已经习惯了。

也就是说,这里是关于集合视图手势支持的文档页面:http: //developer.apple.com/library/ios/#documentation/WindowsViews/Conceptual/CollectionViewPGforIOS/IncorporatingGestureSupport/IncorporatingGestureSupport.html

您也许可以使用它来更改minimumNumberOfTouches内部使用的属性UIPanGestureRecognizer。但同样,我认为你不应该这样做。

于 2013-03-22T14:29:07.827 回答