2017-06-30 11 views
-1

マップポイントをクリックしたときにマップアノテーションインデックス番号を取得したかったが、初めてアプリケーションを実行してインデックスを表示するときに問題が発生した= 5.しかし、私は再びアプリケーションを実行し、同じポイントを再度クリックするとインデックス= 23が表示されます。インデックス番号は、アプリケーションを再実行した後も変わらず、正確なインデックス番号は表示されません私がクリックしたポイント。マップアノテーションインデックス番号を変更し続ける

- (void)mapView:(MKMapView *)mapView didSelectAnnotationView:(MKAnnotationView *)view { 
     if ([view.annotation isKindOfClass:[MKPointAnnotation class]]) { 

      NSUInteger index = [mapView.annotations indexOfObject:view.annotation]; 
      NSLog(@"Index number is %lu", (unsigned long)index); 
} 
+0

重複https://stackoverflow.com/questions/42068857/find-index-of-annotation-mapkit/42071873#42071873 –

+0

@ElTomato私はにObjCのおかげで必要 –

答えて

0

私は、インデックス番号を交換するには、以下のコードを使用していた後、私はannotation.titleに位置IDを保存し、解決策を見つけました。

- (void)mapView:(MKMapView *)mapView didSelectAnnotationView:(MKAnnotationView *)view { 
     if ([view.annotation isKindOfClass:[MKPointAnnotation class]]) { 
      NSString *hubIden = view.annotation.title; 
     } 
} 
関連する問題