iOS如何检测UICollectionView上只垂直滚动的向左或向右滑动?

iOS如何检测UICollectionView上只垂直滚动的向左或向右滑动?,ios,uicollectionview,swipe-gesture,Ios,Uicollectionview,Swipe Gesture,我的收藏视图工作得很好。它显示了一个网格的照片,并列出了数百张照片。您可以垂直滑动以滚动浏览它们。生活是美好的。然而,我现在有一个新的要求。我需要能够检测用户何时向左或向右刷卡。我需要能够截获这个手势,这样我就可以在保持收藏视图垂直滚动功能不变的同时,将行为附加到左右滑动。有什么想法吗?您需要两个识别器,一个用于向左滑动,另一个用于向右滑动: UISwipeGestureRecognizer* swipeUpGestureRecognizer = [[UISwipeGestureRecogniz

我的收藏视图工作得很好。它显示了一个网格的照片,并列出了数百张照片。您可以垂直滑动以滚动浏览它们。生活是美好的。然而,我现在有一个新的要求。我需要能够检测用户何时向左或向右刷卡。我需要能够截获这个手势,这样我就可以在保持收藏视图垂直滚动功能不变的同时,将行为附加到左右滑动。有什么想法吗?

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

UISwipeGestureRecognizer* swipeUpGestureRecognizer = [[UISwipeGestureRecognizer alloc] initWithTarget:self action:@selector(handleSwipeLeftFrom:)];
swipeUpGestureRecognizer.direction = UISwipeGestureRecognizerDirectionLeft;
对于处理程序:

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

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

[view addGestureRecognizer:swipeUpGestureRecognizer];

另一个方向也一样(只需将所有的左键改为右键即可)。

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

UISwipeGestureRecognizer* swipeUpGestureRecognizer = [[UISwipeGestureRecognizer alloc] initWithTarget:self action:@selector(handleSwipeLeftFrom:)];
swipeUpGestureRecognizer.direction = UISwipeGestureRecognizerDirectionLeft;
对于处理程序:

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

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

[view addGestureRecognizer:swipeUpGestureRecognizer];

另一个方向也一样(只需将所有左侧更改为右侧)。

将UISWEEgestureRecognitizer添加到单元格设置中,其方向如下所示

UISwipeGestureRecognizer *swipeRightDir = [[UISwipeGestureRecognizer alloc] initWithTarget:self action:@selector(didSwipeRightDirection:)];
    swipeRightDir.delegate = self;
    swipeRightDir.numberOfTouchesRequired = 1;
    [swipeRightDir setDirection:UISwipeGestureRecognizerDirectionRight];

将UISweepGestureRecognitor添加到单元格设置中,其方向如下所示

UISwipeGestureRecognizer *swipeRightDir = [[UISwipeGestureRecognizer alloc] initWithTarget:self action:@selector(didSwipeRightDirection:)];
    swipeRightDir.delegate = self;
    swipeRightDir.numberOfTouchesRequired = 1;
    [swipeRightDir setDirection:UISwipeGestureRecognizerDirectionRight];