続く
パスを作成するには、2 つのマーカーの間に多数のポリラインを追加する必要がありました。
マーカーの 1 つがドラッグ可能で、ソースがドラッグ可能であるとしましょう。
したがって、ユーザーがマーカーのドラッグを開始すると、以前に描画されたパスが消去され、新しいソースと宛先の間の新しいパスが描画される必要があります。
新しいパスを描くことはできますが、以前のパスを消去するにはどうすればよいですか?
パスの描画方法は次のとおりです。
for (int z = 0; z < list.size() - 1; z++) {
LatLng src = list.get(z);
LatLng dest = list.get(z + 1);
Polyline line = map.addPolyline(new PolylineOptions()
.add(new LatLng(src.latitude, src.longitude),
new LatLng(dest.latitude, dest.longitude))
.width(2).color(Color.RED).geodesic(true));
}
私が得ることができる1つの解決策は
map.clear();
すべてのポリライン、マーカーなどをクリアして、マーカーを再度追加してから、パスを描画します。
しかし、ドラッグを開始するとすぐに、マーカーがクリアされるため、マップに表示されません:(
ありがとうございました