(iPhone), как реализовать перетаскиваемые контакты с помощью OS 4.0 MapKit? - PullRequest
10 голосов
/ 07 июля 2010

Может ли кто-нибудь предоставить какой-нибудь пример кода / инструкции для реализации перетаскиваемых выводов в OS 4.0 с использованием инфраструктуры MapKit?

Ответы [ 2 ]

14 голосов
/ 07 июля 2010

Конечно, приятель (да, я говорю сам с собой),

В вашей пользовательской аннотации добавьте:

@property (nonatomic, readwrite, assign) CLLocationCoordinate2D coordinate; 

Это удовлетворяет требованию реализации setCoordinate, как упомянуто в http://developer.apple.com/iphone/library/documentation/MapKit/Reference/MKAnnotationView_Class/Reference/Reference.html#//apple_ref/occ/instp/MKAnnotationView/draggable

В вашем делегате MapView добавьте:

- (void)mapView:(MKMapView *)mapView annotationView:(MKAnnotationView *)annotationView didChangeDragState:(MKAnnotationViewDragState)newState fromOldState:(MKAnnotationViewDragState)oldState 
{
//..Whatever you want to happen when the dragging starts or stops
}

и в вашем AnnotationView установите перетаскиваемое значение в true, например:

customAnnotationView.draggable      = YES;

Я думаю, это было все, что я сделалзаставить его работать.Скажите мне, если у вас есть проблемы.

1 голос
/ 08 июля 2010

Проверьте MapKitDragAndDrop от Ching-Lang Huang и сопровождающего автора сообщения в блоге .

...