交通アプリケーションを開発していて、道路にいくつかの動線と警告マーカーがあります。ズームレベルに応じて動線を引きます。たとえば、ズーム レベルが 10 を超える場合は、すべての行を削除し、新しいズーム レベルで再描画します。道路に線があふれているからです。すべてのズーム レベルで 400 を超える行があります。したがって、ズームイン/ズームアウトのアクションごとに、削除して再描画します。しばらくすると、マップがフリーズし始め、動きが非常に遅くなります。
バックグラウンドでのキャッシュ操作はありますか? ズームレベルごとにマップをクリアしているためです。凍結を避けるために私がすべきことに加えて?
public GeometryLayer geoLayer;
geoLayer = new GeometryLayer(new EPSG4326());
line = new Line(arr_lat_long1, label, lineStyle, null); //add lines
line.setVertexList(arr_lat_long1);
geoLayer.add(line);
geoLayer.clear(); //clear layer
編集:
mapview.destroyDrawingCache(); を試しました。、 mapview.postInvalidate(); しかし、彼らは私を助けません。また、マップビューを更新する方法はありますか?