有没有可能让特定手势失败,以便识别下一个可能的手势?
具体来说,请看以下示例片段:
UISwipeGestureRecognizer *swipeLeft = [initialize UISwipeGestureRecognizer... @selector(handleSwipe:)]
swipeLeft = UISwipeGestureRecognizerDirectionLeft;
swipeLeft.delegate = self;
UIPanGestureRecognizer *pan = [initialize UIPanGestureRecognizer... @selector(handlePan:)]
pan.delegate = self;
[pan requireGestureRecognizerToFail:swipeLeft];
以上代码表明,如果设备无法识别左滑手势,则将使用平移手势处理程序。
那么我的问题是:是否有可能让左滑手势在被设备识别为左滑触摸后,根据在handleSwipe中检查的某些标准故意失败,并让平移手势处理触摸输入?
谢谢。
YES
,然后在内部类属性(一个BOOL
应该足够了,我想)中添加一个名为didSwipe
的变量。在您的滑动识别方法的开头,将其设置为YES
- 这只会在识别到滑动时发生。在您的平移方法中,将整个内容包裹在一个if语句中:if (!self.didSwipe) {...}
,所以这部分只有在没有滑动或尚未发生滑动时才会执行。您可能还需要在某个时候重置该变量。 - Eric