UIGestureRecognizer 有个方法叫做requireGestureRecognizer ToFail,他可以指定某一个
recognizer,即便自己已经滿足條件了,也不會立刻触发,会等到该指定的 recognizer
确定失败之后才触发。以同时支持单点与双点的手势为例,代码如下:
//
单击的 Recognizer
UITapGestureRecognizer* singleRecognizer;
singleRecognizer = [[UITapGestureRecognizer alloc] initWithTarget:selfaction:@selector(handleSingleTapFrom)];
singleTapRecognizer.numberOfTapsRequired = 1; //
单击
[self.view addGestureRecognizer:singleRecognizer];
//
关键在这一行,如果双击确定偵測失败才會触发单击
[singleRecognizer requireGestureRecognizer ToFail:doubleRecognizer];
[singleRecognizer release];
[doubleRecognizer release];
- (void)viewDidLoad {
// 双击的 Recognizer
UITapGestureRecognizer* double;
doubleRecognizer = [[UITapGestureRecognizer alloc] initWithTarget:selfaction:@selector(handleDoubleTapFrom)];
doubleTapRecognizer.numberOfTapsRequired = 2; //
双击
[self.view addGestureRecognizer:doubleRecognizer];
}
UIGestureRecognizer高级用法
本文介绍了如何使用UIGestureRecognizer的requireGestureRecognizerToFail方法来实现更复杂的触摸手势识别逻辑。通过一个具体的例子——同时支持单点与双点手势——展示了如何确保双击手势识别失败后才触发单击手势。
526

被折叠的 条评论
为什么被折叠?



