iOS如何检测UICollectionView上向左或向右滑动,否则只能垂直滚动?

Joh*_*rck 1 ios swipe-gesture uicollectionview

我的收藏视图效果很好.它显示了一个照片网格,并列出了数百个照片.您可以垂直滑动以全部滚动它们.生活很好.但是,我现在有了新的要求.我需要能够检测用户何时向左或向右滑动.我需要能够拦截这个手势,这样我就可以将行为附加到左右滑动,同时保持我的集合视图的垂直滚动功能.有任何想法吗?

Eri*_*rik 5

你需要两个识别器,一个用于向左滑动,另一个用于向右滑动:

UISwipeGestureRecognizer* swipeUpGestureRecognizer = [[UISwipeGestureRecognizer alloc] initWithTarget:self action:@selector(handleSwipeLeftFrom:)];
swipeUpGestureRecognizer.direction = UISwipeGestureRecognizerDirectionLeft;
Run Code Online (Sandbox Code Playgroud)

并为处理程序:

- (void)handleSwipeLeftFrom:(UIGestureRecognizer*)recognizer {

}
Run Code Online (Sandbox Code Playgroud)

最后,将其添加到您的视图中:

[view addGestureRecognizer:swipeUpGestureRecognizer];
Run Code Online (Sandbox Code Playgroud)

对于另一个方向也是如此(只需将所有Lefts更改为Rights).