Im Moment bearbeite ich eine Kartenansicht mit Anmerkungen und zeige auch den aktuellen Standort des Benutzers an. Mit der Methode "viewForAnnotation" überschreibt es alle Anmerkungen mit dem roten Standardstift, aber ich möchte die Ansichten für die anderen Anmerkungen zurückgeben, aber den Benutzerstandort als blauen Standardbeacon beibehalten. Gibt es eine Möglichkeit, dies einfach zu tun, oder muss ich eine neue Anmerkungsansicht erstellen und die richtige zurückgeben, abhängig von der Anmerkung?So verhindern Sie, dass die Methode viewForAnnotation den Standardbenutzerstandort überschreibt blue beacon in iOS
Im Moment habe ich so etwas wie:
- (MKAnnotationView *)mapView:(MKMapView *)mapView viewForAnnotation:(id <MKAnnotation>)annotation
{
if (annotation.coordinate == locationManager.location.coordinate) {
return nil;
}else {
MKAnnotationView *annotationView = [[MKPinAnnotationView alloc] initWithAnnotation:annotation reuseIdentifier:@"Beacon"];
// Button
UIButton *button = [UIButton buttonWithType:UIButtonTypeDetailDisclosure];
button.frame = CGRectMake(0, 0, 23, 23);
annotationView.rightCalloutAccessoryView = button;
annotationView.canShowCallout = YES;
return annotationView;
}
}
Aber ich kann die beide nicht gleichsetzen, weil ich nicht die Eigenschaft aus dem Anmerkungs Argumente koordinieren bekommen.
Kennt jemand irgendwelche Lösungen dazu?
lullll im dumm, sehr geschätzt, war ich alle diese dummen Arbeit arounds versucht, aber ja ... –
Vielen Dank! Ich muss lernen, mit der Dokumentation von Apple nicht mehr so ein Neuling zu sein –