我在我的应用程序中使用MapView,其中包含不同用户的几个标记。我想更新用户位置。我试过的是,当我得到一个新的用户位置时,我删除并添加所有这些标记。有什么办法吗?识别我为所有其他标记中的特定用户添加的标记?
任何人都可以帮助我吗?
答案 0 :(得分:3)
我所做的是将Snippet
设置为引用或标识标记的任何对象的JSON字符串表示(使用Google的GSON库)。点击标记时,我使用GSON来恢复我的对象。
String snippet = new Gson().toJson(myObject);
//use snippet with your overlay item
用于onTap(int index)
方法:
OverlayItem item = overlays.get(index);
MyObject myObject = new Gson().fromJson(item.getSnippet(), MyObject.class);
这一切都假定您有一个可以序列化/反序列化的对象
答案 1 :(得分:1)
您可以指定标记标题和片段。在您的情况下,您可以为每个用户提供标题,或者每个标记都可以被赋予唯一的用户ID作为代码段属性。然后,您可以通过叠加项目的getTitle()
和getSnippet()
方法(您的标记)检索这些内容
有关标题和摘要的更多信息,请参阅documentation表单
希望这有帮助。