Ho un MKMapView
in un ViewController e vorrei rilevare i gesti degli utenti quando lui/lei tocca la mappa con questi metodi:Rileva tocchi utente su MKMapView in iOS 5
- (void)touchesBegan:(NSSet *)touches withEvent:(UIEvent *)event;
- (void)touchesMoved:(NSSet *)touches withEvent:(UIEvent *)event;
- (void)touchesEnded:(NSSet *)touches withEvent:(UIEvent *)event;
- (void)touchesCancelled:(NSSet *)touches withEvent:(UIEvent *)event;
L'applicazione funziona bene con iOS 3, iOS 4 ma quando il debug l'applicazione con iPhone in esecuzione su iOS 5, vedo questo messaggio:
Pre-iOS 5.0 touch delivery method forwarding relied upon. Forwarding -touchesCancelled:withEvent: to <MKAnnotationContainerView: 0x634790; frame = (0 0; 262144 262144); autoresizesSubviews = NO; layer = <CALayer: 0x634710>>
e il codice nei precedenti 4 metodi non sono raggiunti.
Sai come risolvere il problema?
Grazie.
Non posso ancora commentare su iOS 5 ma per 3.2 a 4, potrebbe essere più semplice utilizzare un UIGestureRecognizer invece dei metodi touch. – Anna
http://stackoverflow.com/questions/1049889/how-to-intercept-touches-events-on-a-mkmapview-or-uiwebview-objects .. Controlla questo collegamento – Kalpesh