0


これは私のクラスです:
http : //wklej.org/id/840949/ --ShopMapActivity
http://wklej.org/id/840950/ --CustomMapView
で、ズームに応じて異なる数のポイントを描画しようとしています。したがって、ズームが9未満の場合は、引用を表すポイントのみを描画する必要があります。ズームインしてズームレベルが9より大きい場合、この領域にあるすべてのポイントを描画する必要があります。アクティビティが開始されると、都市を表すポイントのみが表示されます(これは良いです)。9ズームレベルにズームインすると、その領域に追加のポイントが表示されます(これも良いです)が、その状態からズームアウトすると、追加のポイントは表示されません。私が地図を掃除しているとしても、消えることはありません:

            mapOverlays.clear();        
            mapView.getOverlays().clear();
            mapView.invalidate();
            mapView.postInvalidate();
4

1 に答える 1

1

itemizedOverlayをクリアするのを忘れました。アクティブなovelayのリストから削除しますが、同じポイントをitemizedOverlayに追加し(すでにそこにあります)、アクティブなオーバーレイに追加します。

結論として、コードに以下を追加するだけです。

itemizedoverlay.clear();

行の後:

mapView.getOverlays().clear();

itemizedOvelayでメソッドclear()を作成しなかった場合は、それを実行するときが来ました。

幸運を。

于 2012-10-04T22:41:33.087 に答える