我正在使用添加到 View 顶部的 UICollectionView,并带有单击手势识别器。 CollectionView 使用没有任何 subview 的自定义单元格。委托(delegate)的方法
- (void)collectionView:(UICollectionView *)collectionView didSelectItemAtIndexPath:(NSIndexPath *)indexPath
仅在用两根手指而不是一根手指选择单元格或使用一根手指长按时调用。
我不是不小心覆盖了
- (void)collectionView:(UICollectionView *)collectionView didDeselectItemAtIndexPath:(NSIndexPath *)indexPath
。
我通读了所有类似的问题,这些问题都是通过删除某种 View 或手势识别器解决的。
知道这里出了什么问题吗?
最佳答案
解决方案:将 Collection View 添加到包含单击手势识别器的 View 之上。这在某种程度上导致了这种行为。我从 Collection View 父 View 中删除了识别器,它起作用了。
请随意解释为什么这是预期的行为。我会争辩说,最顶层的 View (CollectionView) 在将触摸传递到后面的 View 之前处理触摸。
关于ios - UICollectionView 的 didSelectItemAtIndexPath 仅在用两根手指选择单元格时调用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43344145/