如何将列表<latlng>作为标记在xamarin android中的地图上

时间:2018-04-07 17:51:50

标签: c# android xamarin.android

任何人都可以告诉我如何将List LatLng放置在地图上,而不是在地图上放置任意LatLng,通过在foreach / for循环中调用MarkOnMap()。 以下是我的代码

             foreach (var marker in markerArray)
             {
                MarkOnMap(new LatLng(Convert.ToDouble(marker.location.latitude), Convert.ToDouble(marker.location.longitude)), marker.displayText, vehicleMarkerIcon);
              }


Marker MarkOnMap(LatLng markerLatLng,string timeStamp, int  markericon)

        {
        Marker markerObj = null;
        this.RunOnUiThread(() =>
        {
        try
        {
          var marker = new MarkerOptions();

     marker.SetPosition(markerLatLng);
   marker.SetTitle(timeStamp);                 
         marker.SetIcon(BitmapDescriptorFactory.FromBitmap(markericon));
                marker.Anchor(0.5f, 0.5f);
                markerObj = map.AddMarker(marker);
            }
            catch (Java.Lang.Exception ex)
            {
                //Console.WriteLine(ex.Message);
            }

        });

        return markerObj;
        }

1 个答案:

答案 0 :(得分:1)

根据Google documentation,您只能使用AddMarker()一次向地图添加标记。所以你必须使用foreach / for循环来添加标记列表。