我想使用手势识别器同时捕捉鼠标向下和鼠标向上。但是,当鼠标向下被捕获时,鼠标向上永远不会被捕获。
这是我所做的:
首先创建一个自定义 MouseGestureRecognizer:
@implementation MouseGestureRecognizer
-(void)touchesBegan:(NSSet *)touches withEvent:(UIEvent *)event {
[super touchesBegan:touches withEvent:event];
self.state = UIGestureRecognizerStateRecognized;
}
-(void)touchesEnded:(NSSet *)touches withEvent:(UIEvent *)event {
[super touchesEnded:touches withEvent:event];
self.state = UIGestureRecognizerStateRecognized;
}
@end
然后将识别器绑定到视图控制器中的视图:
UIGestureRecognizer *recognizer = [MouseGestureRecognizer alloc] initWithTarget:self action:@selector(handleGesture:)];
[self.view addGestureRecognizer:recognizer];
当我在视图中单击鼠标时,将调用 touchesBegan,但从不调用 touchesEnded。是因为 UIGestureRecognizerStateRecognized 吗?