ねえ、私はiPhone用のmapKitについていくぶん密な質問を受けました。
私は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:pinを選択すると、コールバック(このメソッド)が呼び出されるためです...それ以外の場合は呼び出されませんが、 ?なぜそうではないのですか
[self.mapView selectAnnotation:pin animated:TRUE];
呼ばれていますか?
私はすでにあまりにも多くのことを読み、私のコードの説明と修正がリンクよりもはるかに役立つことを理解しようとして、何時間も頭を悩ませてきました。
前もって感謝します。〜Fydo