Pan e Pinch a 2 dita simultaneamente iOS - allo stesso tempo-
-
28-10-2019 - |
Domanda
2 Riconoscimento dei gesti:
UIPinchGestureRecognizer *twoFingerPinch =
[[UIPinchGestureRecognizer alloc] initWithTarget:self action:@selector(handlePinch:)];
[croppper addGestureRecognizer:twoFingerPinch];
UIPanGestureRecognizer *PanRecognizer = [[[UIPanGestureRecognizer alloc] initWithTarget:self action:@selector(handlePan:)] autorelease];
[croppper addGestureRecognizer:PanRecognizer];
e:
- (BOOL)gestureRecognizer:(UIGestureRecognizer *)gestureRecognizer shouldRecognizeSimultaneouslyWithGestureRecognizer:(UIGestureRecognizer *)otherGestureRecognizer {
return YES;
}
Ma pizzicare e fare una padella allo stesso tempo non funziona ... spesso posso pizzicare perché il riconoscimento pan è attivo.
saluti
Soluzione
Non sembra che tu stia impostando il delegato per ogni riconoscimento di gesti.gestureRecognizer:shouldRecognizeSimultaneouslyWithGestureRecognizer:
è un metodo delegato, quindi se il riconoscimento del gesto non ha delegato, questo metodo non verrà richiamato.
Di conseguenza, il valore restituito predefinito sarà NO
, quindi i gesti non verranno riconosciuti contemporaneamente.
Altri suggerimenti
Ti stai impostando come delegato dei riconoscitori?
[twoFingerPinch setDelgate:self];
...
[PanRecognizer setDelegate:self];
PS Proverei anche a ottenere uno schema di denominazione più coerente per le tue variabili!