How can I get multitouch and single touch event?
I try to touch moving (not touch up) left finger, now I click right finger on the screen, But I try to get right finger touch event or touch point.
I set the log [gesture numberOfTouches] or [gesture numberOfTouchesRequired]. I still get 1, not get 2.
In my ViewDidLoad method I set below code:
- (void)viewDidLoad {
[super viewDidLoad];
self.view.multipleTouchEnabled = YES;
self.view.exclusiveTouch = NO;
UILongPressGestureRecognizer *panelLongPressGestureRecognizer =
[[UILongPressGestureRecognizer alloc] initWithTarget:self action:@selector(panelLongPressRecgonizerAction:)];
panelLongPressGestureRecognizer.delegate = self;
//panelLongPressGestureRecognizer.numberOfTapsRequired = 1;
//panelLongPressGestureRecognizer.numberOfTouchesRequired = 1;
panelLongPressGestureRecognizer.minimumPressDuration = 0.001;
[self.view addGestureRecognizer:panelLongPressGestureRecognizer];
UILongPressGestureRecognizer *panelLongDoublePressGestureRecognizer =
[[UILongPressGestureRecognizer alloc] initWithTarget:self action:@selector(panelLongPressRecgonizerAction:)];
panelLongDoublePressGestureRecognizer.delegate = self;
panelLongDoublePressGestureRecognizer.numberOfTapsRequired = 2;
panelLongDoublePressGestureRecognizer.numberOfTouchesRequired = 2;
panelLongDoublePressGestureRecognizer.minimumPressDuration = 0.001;
[self.view addGestureRecognizer:panelLongDoublePressGestureRecognizer];
}
- (void)panelLongPressRecgonizerAction:(UILongPressGestureRecognizer *) gestureRecognizer
{
switch (gestureRecognizer.state) {
case UIGestureRecognizerStateBegan:
NSLog(@" === long press began ===");
break;
case UIGestureRecognizerStatePossible:
break;
case UIGestureRecognizerStateChanged:
NSLog(@" === long press changed ===");
[self pressChanged:gestureRecognizer];
break;
case UIGestureRecognizerStateEnded:
NSLog(@" === long press end ===");
break;
case UIGestureRecognizerStateCancelled:
NSLog(@" === long press cancell ===");
break;
case UIGestureRecognizerStateFailed:
NSLog(@" === long press failed ===");
break;
}
NSLog(@" ");
}
- (void) pressChanged:(UILongPressGestureRecognizer *) gesture
{
NSLog(@"moved guesture.number of touches:%ld", [gesture numberOfTouches]);
NSLog(@"moved numberOfTouchesRequired of touches:%ld", [gesture numberOfTouchesRequired]);
}
I still get log:
2015-05-11 14:25:46.117 DroneG2[7521:1149008] === long press changed ===
2015-05-11 14:25:46.118 DroneG2[7521:1149008] moved guesture.number of touches:1
2015-05-11 14:25:46.118 DroneG2[7521:1149008] moved numberOfTouchesRequired of touches:1
Have anyone know where is my question in my code?
I want to get other finger touch point or event when I moving?
thank you very much.
Aucun commentaire:
Enregistrer un commentaire