MapKit çerçevesini kullanarak OS 4.0'da sürüklenebilir pimleri uygulamak için herhangi bir örnek kod/talimat sunabilir mi? Özel açıklama eklenti olarak(iPhone) OS 4.0 MapKit kullanarak sürüklenebilir pimleri nasıl uygulanır?
10
A
cevap
14
Hayhay dostum (evet ben kendime konuşuyorum),
: inhttp belirtildiği gibi
@property (nonatomic, readwrite, assign) CLLocationCoordinate2D coordinate;
Bu, setCoordinate uygulanması gereksinimini karşılar: // geliştiricisi. apple.com/iphone/library/documentation/MapKit/Reference/MKAnnotationView_Class/Reference/Reference.html#//apple_ref/occ/instp/MKAnnotationView/draggable
senin MapView temsilci eklenti olarak:
- (void)mapView:(MKMapView *)mapView annotationView:(MKAnnotationView *)annotationView didChangeDragState:(MKAnnotationViewDragState)newState fromOldState:(MKAnnotationViewDragState)oldState
{
//..Whatever you want to happen when the dragging starts or stops
}
ve true sürüklenebilir ayarlayın AnnotationView içinde, yani örneğin:
customAnnotationView.draggable = YES;
Bunu almak o çalışma için yaptığı her şey olduğunu düşünüyorum. Sorunların varsa bana haber ver.
1
Ching-Lang Huang ve yazarın yandaşı olan blog post tarafından MapKitDragAndDrop göz atın.
"Diğer iPhone Geliştirme" adlı kitaptan özel bir ek açıklama sınıfı "MapLocation" kullanıyorum - bu normal bir özel açıklama sınıfı. Ekledim, yukarıdaki gibi yapmak için varolan özelliğe atayım, ancak sürükle geri çağırma hiçbir zaman çağrılmaz. ViewForAnnotation'da, ek açıklamayı bir MapLocation olarak yayınlayıp görünümüne getirdim ve sürüklenebilir = YES. Sadece test için yaptım, muhtemelen OS3 desteği ile gideceğim. Ama neyin eksik olabileceği hakkında bir fikrin var mı? –
Tristan, alıştırmak için kullandığınız kodu paylaşmaya istekli olur muydu? Düşünebildiğim herşeyi yapıyorum ama nedense pimi hareket ettiremiyorum ve bulabildiğim her öğreticiyi denedim (aşağıdaki yorum da dahil). Teşekkür ederim! –