c# - 删除所有标记而不使用 map.clear() Google map - Xamarin

标签 c# android google-maps xamarin

我正在尝试拥有一个 GPS 定位系统,该系统每秒更新用户的位置,不断绘制他们使用折线行进的路线,并在每次更改时将标记移动到他们的最新位置。

在 Xamarin 中是否有一个很好的方法来删除所有标记,但没有清除以前附加的多段线(像 map.clear() 那样)

现在我知道我可以在本地存储坐标,然后每次都重新绘制它们,但是这最终可能会成为一条非常长的路线,我宁愿不必这样做这一点,因为最终会有一个硬性限制,在下一组坐标通过之前,它无法绘制完整的路线,并且更愿意将最新的线附加到先前绘制的线,然后移动标记。

如有任何相关信息,我们将不胜感激。

最佳答案

从 map AddMarker 方法返回的 Marker 对象有一个 .Remove 方法。

将此返回的对象转换为 Maker 将允许您访问 .Remove 方法以将其从当前附加到的 map 中删除。

大多数开发人员将这些返回的屏蔽器对象存储在字典/列表/...中,您可以将它们保存为返回的通用 java 对象,或者创建一个基于 Maker 的通用集合,这样以后就不需要转换了。

关于c# - 删除所有标记而不使用 map.clear() Google map - Xamarin,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35847817/

相关文章:

c# - Process.Exited 并不总是触发

c# - 如何将整个字符串与正则表达式匹配?

c# - 什么相当于 c# 中的 Microsoft.VisualBasic.Collection?

c# - 不支持带有 Autofac 的 Net Core 3.0 抛出 IServiceProvider

java - 如何在android中固定时间后重复任务?

java - Android - 如何生成 GreenDao 实体

android - Chromecast是否支持并行播放的少数媒体流?

google-maps - Bootstrap 和 iFrame 谷歌地图

javascript - 点击 map 外部打开 Google map 信息窗口

javascript - 如何使谷歌地图适合移动设备屏幕