Ios CollectionView单元格上的UISwipegestureRecognitor不工作

Ios CollectionView单元格上的UISwipegestureRecognitor不工作,ios,object,uicollectionview,uiswipegesturerecognizer,Ios,Object,Uicollectionview,Uiswipegesturerecognizer,我有一个带有多个单元格的UICollectionView(水平布局)。设备上只应显示一个单元格,4秒钟后,下一个单元格淡入,旧的单元格应退出屏幕。这很好用。我正在使用NSTimer进行自动动画 我的问题是,当用户触摸(而不是单击!)其中一个单元格时,我想停止此动画。所以我制作了一个UISweepGestureRecognitor,如下所示: - (void)viewDidLoad { [super viewDidLoad]; UISwipeGestureRecognizer *collectio

我有一个带有多个单元格的UICollectionView(水平布局)。设备上只应显示一个单元格,4秒钟后,下一个单元格淡入,旧的单元格应退出屏幕。这很好用。我正在使用NSTimer进行自动动画

我的问题是,当用户触摸(而不是单击!)其中一个单元格时,我想停止此动画。所以我制作了一个UISweepGestureRecognitor,如下所示:

- (void)viewDidLoad
{
[super viewDidLoad];
UISwipeGestureRecognizer *collectionViewSwipe = [[UISwipeGestureRecognizer alloc] initWithTarget:self.collectionView action:@selector(didTouchCell:)];
collectionViewSwipe.delegate = self;
collectionViewSwipe.numberOfTouchesRequired = 1;

[self.collectionView addGestureRecognizer:collectionViewSwipe];
}

- (void)didTouchCell: (UISwipeGestureRecognizer*) recognizer {

[self.collectionViewTimer invalidate];
}

但是“didTouchCell”从未被调用…

结果是CollectionView位于UIScrollView之上,因此我必须在我的控制器中实现此方法:

- (BOOL)gestureRecognizer:(UIGestureRecognizer *)gestureRecognizer shouldRecognizeSimultaneouslyWithGestureRecognizer:(UIGestureRecognizer *)otherGestureRecognizer {
return true;
}