Как создать сенсорные события для MKMapView? - PullRequest
2 голосов
/ 19 марта 2011

Как создать сенсорные события для MKMapView. Я использую UIViewController и добавляю MKMapView, используя конструктор интерфейса. Теперь мне нужно обработать сенсорные события для этой карты .....

Я пытался написать методы делегата UITouch Но я потерпел неудачу ... Мне не звонят.

Пожалуйста, опубликуйте решение о том, как обрабатывать сенсорные события в MKMapView .....

Заранее спасибо ...

1 Ответ

6 голосов
/ 19 марта 2011

Если вы довольны решением для iOS 4 и выше, я использовал распознаватели UIGesture, и у меня никогда не было проблем.

Вот пример длинного жеста нажатия (нажмите и удерживайте):

// Long press gesture recogniser
UILongPressGestureRecognizer *longPressGesture = [[UILongPressGestureRecognizer alloc]
                                                  initWithTarget:self 
                                                          action:@selector(handleLongPressGesture:)];
[self.view addGestureRecognizer:longPressGesture];
[longPressGesture release];

И тогда вы можете обрабатывать даже в вашем handleLongPressGesture: методе:

-(void)handleLongPressGesture:(UILongPressGestureRecognizer*)sender 
{
     if (sender.state == UIGestureRecognizerStateEnded || sender.state == UIGestureRecognizerStateChanged)
          return;
     else {
         // Your app logic here...
     }
}
...