Mais il y a un hic pour obtenir benvolioT de la solution de travail, le code
for (id<MKAnnotation> currentAnnotation in mapView.annotations) {
if ([currentAnnotation isEqual:annotationToSelect]) {
[mapView selectAnnotation:currentAnnotation animated:FALSE];
}
}
devrait être appelé à partir d' - (void)mapViewDidFinishLoadingMap:(MKMapView *)mapView
, et nulle part ailleurs.
La séquence dans laquelle les diverses méthodes comme viewWillAppear
, viewDidAppear
de UIViewController
et de la - (void)mapViewDidFinishLoadingMap:(MKMapView *)mapView
est appelé est différente entre la première fois que la carte est chargé avec un endroit particulier, et les fois suivantes, la carte est affichée avec le même emplacement. C'est un peu délicat.