Ich habe zwei Ansichten, die erste Ansicht hat einen MKMapView darauf ridesMap benannt. Die zweite Ansicht ist nur eine Ansicht mit einem UITableView drin. Wenn Sie die Taste in der zweiten Ansicht speichern klicken, ruft es eine Methode aus der ersten Ansicht:
// Get my first views class
MyRidesMapViewController *rideMapView = [[MyRidesMapViewController alloc] init];
// Call the method from my first views class that removes an annotation
[rideMapView addAnno:newRidePlacemark.coordinate withTitle:rideTitle.text withSubTitle:address];
Diese richtig ruft die addAnno Methode, die wie folgt aussieht:
- (void)addAnno:(CLLocationCoordinate2D)anno withTitle:(NSString *)annoTitle withSubTitle:(NSString *)subTitle {
Annotation *ano = [[[Annotation alloc] init] autorelease];
ano.coordinate = anno;
ano.title = annoTitle;
ano.subtitle = subTitle;
if ([ano conformsToProtocol:@protocol(MKAnnotation)]) {
NSLog(@YES IT DOES!!!);
}
[ridesMap addAnnotation:ano];
}//end addAnno
Diese Methode erstellt eine Anmerkung, die MKAnnotation nicht entspricht, und es nehme an, dass die Anmerkung zu der Karte unter Verwendung der AddAnnotation Methode hinzuzufügen. Aber, wird die Anmerkung nie gegeben.
Ich habe nie irgendwelche Fehler, wenn die Anmerkung hinzugefügt bekommt. Aber es scheint, nie, wenn die Methode aufgerufen wird.
Warum wäre das? Es scheint, dass ich alles richtig gemacht habe, und dass ich eine richtige MKAnnotation zur AddAnnotation Methode bin vorbei. So bekomme ich nicht, warum es nie einen Stift fällt? Könnte es sein, weil ich aus einer anderen Ansicht dieser Methode nenne? Warum sollte das denn?













