Эй, у меня есть несколько плотный вопрос о mapKit для iPhone.selectAnnotation после удаления, а затем повторное добавлениеAnnotation
Я использую каркас MapKit, и то, что я пытаюсь сделать, это в основном щелкнуть булавку, перезагрузить ее, а затем показать, что это callOut после того, как она была добавлена снова.
Это код, который я пытаюсь заставить работать ..
-(void)mapView:(MKMapView *)mapView didSelectAnnotationView:(MKAnnotationView *)view{
NSLog(@"count of selected Annotations: %d",[mapView selectedAnnotations].count);
MKAnnotation* pin = view.annotation;
[mapView deselectAnnotation:pin animated:FALSE];
[mapView removeAnnotation:pin];
[mapView addAnnotation:pin];
[self.mapView selectAnnotation:pin animated:TRUE];
Несколько замечаний: Если я комментирую removeAnnotations и addAnnotation линии, я войти в бесконечный цикл, потому что, когда я selectAnnotation: контактный , обратный вызов (который является этим методом) называется ... в противном случае это не так, но тогда что такое? почему не
[self.mapView selectAnnotation:pin animated:TRUE];
называется?
Я уже слишком много читал и слишком долго пробивал себе голову, пытаясь понять, что объяснение и исправление для моего кода будут гораздо полезнее, чем ссылка.
Заранее спасибо. ~ Fydo