以下是代码,我如何在地图中添加标记:
markerOpt = new MarkerOptions();
markerOpt.SetTitle("Shop");
markerOpt.SetPosition(Location);
_map.AddMarker(markerOpt).ShowInfoWindow();
Marker aM = _map.AddMarker(markerOpt);
listCurrentPostsMarkers.Add(aM);
在地图和列表中添加标记但在地图上无法删除这些标记时没问题。这是代码,我是怎么做的。
foreach(Marker mk in listCurrentPostsMarkers)
{
mk.Remove();
}
以下是具有类
的对象List<Android.Gms.Maps.Model.Marker> listCurrentPostsMarkers
Android.Gms.Maps.GoogleMap _map
Android.Gms.Maps.Model.LatLng Location
我是新来的。提前致谢。欢呼声。
答案 0 :(得分:0)
代码说起来比散文更响亮我猜:
markerOpt = new MarkerOptions();
markerOpt.SetTitle("Shop");
markerOpt.SetPosition(Location);
Marker aM = _map.AddMarker(markerOpt);
aM.ShowInfoWindow();
// you don't need this line (it creates a duplicate marker) ===> Marker aM = _map.AddMarker(markerOpt);
listCurrentPostsMarkers.Add(aM);
答案 1 :(得分:0)
问题是你要互相制作两个标记!!!
_map.AddMarker(markerOpt).ShowInfoWindow(); //first one added here
Marker aM = _map.AddMarker(markerOpt); // second one added here
稍后您只删除其中一个,这就是您仍然在地图上看到一个的原因。 做@Andy告诉你的事情:
markerOpt = new MarkerOptions();
markerOpt.SetTitle("Shop");
markerOpt.SetPosition(Location);
Marker aM = _map.AddMarker(markerOpt);
aM.ShowInfoWindow();
listCurrentPostsMarkers.Add(aM);