2014-12-19 2 views
0

Ниже приведен мой код; Я не получаю didDoubleTapMap уволен.MKMapView двойной кран

UITapGestureRecognizer *doubleTap = [[UITapGestureRecognizer alloc] initWithTarget: self action:@selector(didDoubleTapMap:)]; 
doubleTap.numberOfTapsRequired = 2; 
doubleTap.numberOfTouchesRequired = 1; 
[mkMapView addGestureRecognizer:doubleTap]; 


UITapGestureRecognizer *singleTap = [[UITapGestureRecognizer alloc] initWithTarget:self action:@selector(singleTapOnMap:)]; 
singleTap.numberOfTapsRequired = 1; 
singleTap.numberOfTouchesRequired = 1; 


[singleTap requireGestureRecognizerToFail:doubleTap]; 

[mkMapView addGestureRecognizer:singleTap]; 
+0

Вы пытались осуществить жест делегата? return YES on 'shouldRecognizeSimultaneousWithGestureRecognizer'? –

+0

Я использовал shouldRecognizeSimultaneousWithGestureRecognizer, возвращающий YES, однако не устанавливал делегата doubleTap.delegate = self; singleTap.delegate = self; Так shouldRecognizeSimultaneousWithGestureRecognizer не получил вызов. – Usman

ответ

3

Что я пропускал был,

doubleTap.delegate = self; 
singleTap.delegate = self; 

Также не забудьте осуществить:

- (BOOL)gestureRecognizer:(UIGestureRecognizer *)gestureRecognizer shouldRecognizeSimultaneouslyWithGestureRecognizer:(UIGestureRecognizer *)otherGestureRecognizer { 
return YES; 
} 
+0

Отлично было решено. –

Смежные вопросы