TMapViewを使用し、MapView1.AddMarker(...)を使用してTMapViewをいくつか配置しましたが、マップをクリアするにはどうすればいいですか?Delphi FMX MapView - すべてのマーカーを削除
ドキュメンテーションでは、MapView.Clearというものが見つかりません。
TMapViewを使用し、MapView1.AddMarker(...)を使用してTMapViewをいくつか配置しましたが、マップをクリアするにはどうすればいいですか?Delphi FMX MapView - すべてのマーカーを削除
ドキュメンテーションでは、MapView.Clearというものが見つかりません。
あなたが作成したTMapMarkerオブジェクトへの参照を保存する必要があるため、各マーカーを個別に削除する必要があります。 TMapMarker(MapView1.AddMarker呼び出しの結果)には2つのメソッドがあります。 "Remove"はマップからマーカーを削除し、 "DisposeOf"はマーカーをマップから削除してTMapMarkerオブジェクトを解放します。マーカーは、ループ内で、このコードによって置かれた
var
mar : array of TMapMarker;
procedure TForm1.clear_markers;
var
i:integer;
begin
for i:=0 to high(mar) do
begin
mar[i].Remove;
end;
setlength(mar,0);
end;
大丈夫、これは正常に動作します。 変数LOCとのは、あなたはそれに私を打つデータベース
setlength(mar,length(mar)+1);
Descr := TMapMarkerDescriptor.Create(loc, s);
mar[high(mar)]:=MapView1.AddMarker(Descr);
からロードされています。私は、Androidマップビューの実装で管理されているマーカーのコレクションにアクセスできる実用的な方法はないと思って追加しました。(少なくとも、不適切なレベルの維持不能なものではないからです。 – blong
私の問題は次のことです。マーカーの座標をデータベースに保存しました。データベース内の実際の状態からマップを更新する必要があることがあります。 追加されたマーカーへの参照をどのように保存できますか? – milenjao