0

Web サービスからの応答 JSON から注釈を作成します。

ピンをマップにロードすることはできますが、中心の位置を移動すると、新しい一連の注釈を再ロードして古い注釈を削除する必要があります。この方法を実行すると、ピンのみが充電され、中央を移動すると同じように充電されます。

私はこのような方法をたくさん試しました...

for (id<MKAnnotation> annotation in _mapView.annotations) {
    [_mapView removeAnnotation:annotation];
}

しかし、それはこれだけです。マップの中心に到達し、マップを移動すると最初に戻り、マップをズームできず、再ロードとループが発生します。

4

1 に答える 1

1

すべての注釈を削除するには、新しい注釈を追加する前にこれを実行するだけです。

 NSMutableArray *toRemove = [NSMutableArray arrayWithCapacity:15];
for (id annotation in mapView.annotations){
    if (annotation != mapView.userLocation)
        [toRemove addObject:annotation];

    [mapView removeAnnotations:toRemove];
于 2012-06-04T10:22:22.023 に答える