[英]swipe and pan gesture overlap
是否可以让特定手势失败,以便识别下一个可能的手势?
更具体一点,请查看示例代码段:
UISwipeGestureRecognizer *swipeLeft = [initialize UISwipeGestureRecognizer... @selector(handleSwipe:)]
swipeLeft = UISwipeGestureRecognizerDirectionLeft;
swipeLeft.delegate = self;
UIPanGestureRecognizer *pan = [initialize UIPanGestureRecognizer... @selector(handlePan:)]
pan.delegate = self;
[pan requireGestureRecognizerToFail:swipeLeft];
上面的代码指出,如果设备无法识别向左滑动,则将使用平移手势处理程序。
所以我的问题:是否有可能让swipeLeft故意失败(在被设备识别为滑动左触摸之后)基于在handleSwipe上检查的一些标准,并让平移手势处理触摸输入?
谢谢。
在这里查看UIGestureRecognizerDelegate
协议:
具体来说,
gestureRecognizer:shouldRecognizeSimultaneouslyWithGestureRecognizer:
方法可能有用。 如果您只是从此方法返回YES
,则可以同时识别这两个手势,因此您可以对两者进行适当的响应。
假设您为平移手势实现了一些其他处理程序,那么您不能这样做:
-(void)handleSwipe:(id)sender {
if //criteria is met to ignore left swipe
{
[self handlePan:self];
}
}
-(void)handlePan:(id)sender {
// handle pan gesture here
}
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.