mkmapview MKUserLocation AnnotationView

Ich versuche zu erstellen benutzerdefinierter annotationviews für die Anmerkungen, die auf meiner Karte. Ich mache, dass durch die Anpassung des Protokolls MKMapViewDelegate und überschreiben der Funktion mapView:viewForAnnotation:. Es funktioniert alles, das problem ist nur, dass ich auch showsUserLocation eingestellt TRUE, was bedeutet, dass eine "Anmerkung" ich bekomme in meinem mapView:viewForAnnotation: Methode ist von der Klasse MKUserLocation.

Ich will nicht die userlocation annotation zu haben, der meine benutzerdefinierte annotationview, ich will, dass der Standard-userlocation annotationview! Wie kann ich wieder die Standard-userlocation annotationview für die userlocation oder ausschließen aus den Anmerkungen, die in mapView:viewForAnnotation:)?

Habe ich versucht zu fangen, die UserLocation in der mapView:viewForAnnotation: Methode, aber ich weiß nicht, was zurück! (In diesem Beispiel ich fahre einen standard-MKAnnotationView, aber, die nicht Aussehen wie die Standard-UserLocation Annotation (offensichtlich).)

    if (![[annotation class] isEqual:[MKUserLocation class]]) {

        MKAnnotationView *view = [[MKAnnotationView alloc] initWithAnnotation:annotation reuseIdentifier:@"customAnnotation"];
        //edit the custom view
        return view;
    }

    MKAnnotationView *view = [[MKAnnotationView alloc] init];
    return view;
  • bitte schreiben Sie code, die Sie umgesetzt haben, in mapView:viewForAnnotation
InformationsquelleAutor Terrabythia | 2013-03-19
Schreibe einen Kommentar