iOS. Как получить информацию о текущем прямоугольнике карты после каждого действия с этой картой?

Например, я хочу отобразить текущие x, y, ширину и высоту прямоугольника карты, но я не знаю, какие события мне следует обрабатывать. По крайней мере, я хочу поймать двойной щелчок, масштабирование и перетаскивание.


person Gargo    schedule 15.09.2011    source источник


Ответы (1)


Ознакомьтесь с документацией по протоколу MKMapViewDelegate. У вас есть следующие доступные методы: http://developer.apple.com/library/ios/#documentation/MapKit/Reference/MKMapViewDelegate_Protocol/MKMapViewDelegate/MKMapViewDelegate.html

– mapView:regionWillChangeAnimated:
– mapView:regionDidChangeAnimated:
– mapViewWillStartLoadingMap:
– mapViewDidFinishLoadingMap:
– mapViewDidFailLoadingMap:withError:
– mapViewWillStartLocatingUser:
– mapViewDidStopLocatingUser:
– mapView:didUpdateUserLocation:
– mapView:didFailToLocateUserWithError:
– mapView:viewForAnnotation:
– mapView:didAddAnnotationViews:
– mapView:annotationView:calloutAccessoryControlTapped:
– mapView:annotationView:didChangeDragState:fromOldState:
– mapView:didSelectAnnotationView:
– mapView:didDeselectAnnotationView:
– mapView:viewForOverlay:
– mapView:didAddOverlayViews:

Кроме того, MKMapView наследуется от UIScrollView, поэтому, назначив себя делегатом, вы также можете принять протокол UIScrollViewDelegate и использовать следующие методы: http://developer.apple.com/library/ios/#documentation/UIKit/Reference/UIScrollViewDelegate_Protocol/Reference/UIScrollViewDelegate.html

person Javier Soto    schedule 15.09.2011
comment
Я не зачем ты это постишь сюда. Я знаю о документации и я спросил, нужно ли переопределять ВСЕ эти функции??? - person Gargo; 16.09.2011
comment
Это не переопределение, вы реализуете методы делегата, о которых хотите получать уведомления :) В частности, вы, вероятно, захотите реализовать: – mapView:regionWillChangeAnimated: и – mapView:regionDidChangeAnimated: - person Javier Soto; 16.09.2011
comment
Это почти все, что мне нужно. Может быть, можно отследить событие перетаскивания текущей позиции до события касания? - person Gargo; 16.09.2011