2017-07-28 21 views
1

Xamarinフォームでは、私が実装したマップ用のカスタムレンダラーをAndroidで使用していますAndroid.Gms.Mapsユーザーがクリックした領域にマーカーを追加する機能を記述したい地図。私HandleMapClick()機能でXamarin Android Googleマップ - ユーザーがクリックするマーカーを追加します。

public async void OnMapReady(GoogleMap googleMap) 
    { 
     map.MapClick+= HandleMapClick; 
    } 

、どのように私は、ユーザーが地図上のクリックした領域にマーカーを追加するaddMarker()機能を使用していますか?

答えて

2

GoogleMap.MapClickEventArgsには、ユーザーのクリックの緯度/経度を含む「ポイント」が含まれています。 MarkerOptionを作成し、そのポイントを割り当ててマップに追加します。

googleMap.MapClick += (object sender, GoogleMap.MapClickEventArgs e) => 
{ 
    using (var markerOption = new MarkerOptions()) 
    { 
     markerOption.SetPosition(e.Point); 
     markerOption.SetTitle("StackOverflow"); 
     // save the "marker" variable returned if you need move, delete, update it, etc... 
     var marker = googleMap.AddMarker(markerOption); 
    } 
}; 
+0

ありがとう!私はこれを3分で受け入れるでしょう –

+1

@BarneyChambers喜んで私が助けることができる...ちょうど私がこの質問のポップアップを見たときにマップアプリケーションをコーディングしている;-) – SushiHangover

関連する問題