我正在使用Android.Gms.Maps.GoogleMap
在我的Xamarin表单应用程序android项目中显示地图。我无法找到很多关于在特定纬度和经度上显示(理想情况下)屏幕上的圆圈的文档,或者(不太理想情况下)标记图钉。
是否有GoogleMap.addMarker(double latitude, double longitude)
或类似的功能来显示这样的圆圈或图钉?
答案 0 :(得分:2)
要在Google地图上添加圈子,请使用以下代码:
Circle circle;
public void OnMapReady (GoogleMap googleMap)
{
map = googleMap;
var circleOptions = new CircleOptions ();
circleOptions.InvokeCenter (new LatLng (lat, lon));
circleOptions.InvokeRadius (circle.Radius);
circleOptions.InvokeFillColor (0X66FF0000);
circleOptions.InvokeStrokeColor (0X66FF0000);
circleOptions.InvokeStrokeWidth (1);
circle = map.AddCircle (circleOptions);
}
要添加标记,请使用此选项:
Marker marker;
public void OnMapReady (GoogleMap googleMap)
{
MarkerOptions markerOpt1 = new MarkerOptions();
markerOpt1.SetPosition(new LatLng(lat, lon));
markerOpt1.SetTitle("testing");
marker = googleMap.AddMarker(marker1);
}
为避免多个标记和圆圈,您可以编辑其位置而无需重新编写:
circle.Center = new LatLng(latLng.Latitude, latLng.Longitude);
marker.Position = new LatLng(latLng.Latitude, latLng.Longitude);