0

交通アプリケーションを開発していて、道路にいくつかの動線と警告マーカーがあります。ズームレベルに応じて動線を引きます。たとえば、ズーム レベルが 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(); しかし、彼らは私を助けません。また、マップビューを更新する方法はありますか?

4

1 に答える 1