アイテム化されたオーバーレイをすべてマップから削除しようとしていますが、削除できず、理由がわかりません。私は多くのチュートリアルを読みましたが、それらすべてに次の解決策があります。
itemizedoverlay.clear();
mMapView.invalidate();
しかし、それは機能しません!
私はこれをAsyncTaskで実行しようとしています。ここでは、まず(onPreExecute()で)次のことを実行します。
itemizedoverlay.clear();
mMapView.invalidate();
次に、サーバーからすべてのジオポイントを取得し、myitemizedoverlayオブジェクトのリストを作成し(doInBackground())、次のようにマップに配置します(onPostExecute())。
for (int i = 0; i < myListOfOverlayItem.size(); i++) {
itemizedoverlay.addOverlay(myListOfOverlayItem.get(i));
}
overlays.add(itemizedoverlay);
コードがマップを更新しないのはなぜですか?:-/
これはクリアのコードです:
public void clear(){
this.m_overlays.clear();
setLastFocusedIndex(-1);
populate();
}
ありがとう