0
私はあるタグを持つものを見つけるために私の地図上の注釈を踏んでいます。私はこの注釈を削除し、新しいもの(差分色)を追加しますMKMapViewでMKAnnotationsを扱うときにスローダウン
問題は非常に長い時間がかかります。理由は分かりません。それは300の注釈を通って行く、それは20秒かかる!どうすればこれをスピードアップできますか?たとえば、現在表示されているアノテーションのみを取得する方法がありますか?または、注釈がある場合は、mapView.annotations配列内のインデックスが何であるかを教えてもらえますか?そうではありません。
for (int i =0; i < [self.mapView.annotations count]; i++)
{
if ([[self.mapView.annotations objectAtIndex:i] isKindOfClass:[BasicMapAnnotation class]])
{
BasicMapAnnotation *bmaTemp =(BasicMapAnnotation*)[self.mapView.annotations objectAtIndex:i];
if (bmaTemp.mapTag == pinTag) {
[self.mapView removeAnnotation:[self.mapView.annotations objectAtIndex:i]];
self.customAnnotation = [[[BasicMapAnnotation alloc] initWithLatitude:[shop.latitude doubleValue] andLongitude:[shop.longitude doubleValue]] autorelease];
self.customAnnotation.mapTag = pinTag;
[self.mapView addAnnotation:self.customAnnotation];
}
}
}