Hogyan kell megnyitni hívja ki MKAnnotationView programozott? (IPhone, MapKit)

szavazat
26

Azt akarom, hogy nyissa meg a feliratot egy MKPinAnnotationViewprogramozott. Pl csepp 10 csapok a térképen, és szeretné, hogy nyissa ki a legközelebb hozzám. Honnan megy körülbelül ezt?

Az Apple meghatározott a „kiválasztott” paraméter MKAnnotationView's, de visszatartja beállítás közvetlenül (ez nem működik, próbáltam).

A többi MKAnnotationViewcsak egy setHighlighted ( ugyanazt a történetet ), és ShowCallouta módszer ..

Bármilyen tippeket, ha ez egyáltalán lehetséges?

A kérdést 03/02/2010 18:16
a forrás felhasználó
Más nyelveken...                            


2 válasz

szavazat
77

Az Ön mapViewController létre cselekvési mód:

- (void)openAnnotation:(id)annotation 
{
    //mv is the mapView
    [mv selectAnnotation:annotation animated:YES];

}

Ezt követően megállapíthatja a legközelebb kommentár alapján a jelenlegi helyét, és séta a kommentárok elérhető a tömbben.

[mv annotations];

Miután a legközelebb kommentár számítjuk, hívja:

[self openAnnotation:closestAnnotation];

A mapView kell görgetni automatikusan helyezze el a kommentár a kijelző közepén található.

Válaszolt 26/02/2010 05:45
a forrás felhasználó

szavazat
1

A gyors 3 ez frissítve:

func openAnnotation(annotation: MkAnnotation) {
_ = [mapView .selectAnnotation(annotation, animated: true)]
}

és lehet nevezni bármilyen magyarázat (ez megnyitja a kommentár kiemelő véli és megpróbálja középre a kommentár a térképen)

Például a második annotáció egy hipotetikus megjegyzéslistával.

openAnnotation(annotation: mapView.annotations[1])
Válaszolt 23/05/2017 16:14
a forrás felhasználó

Cookies help us deliver our services. By using our services, you agree to our use of cookies. Learn more