谷歌地图 V2 - Android - 获取标记列表

25

我正在尝试获取类似于我在这里使用GMaps V1.1 for Android中的getOverlays()方法的标记列表(使用GMaps V2 for Android):

private MapView mapView; 

mapView.getOverlays().add(overlay);

我该如何做类似于上述内容,但使用标记呢?

非常感谢任何帮助。

2个回答

54
如何实现类似上述代码但使用标记(markers)呢?
调用addMarker()时,将返回的Marker对象保存到所选择的集合中(例如ArrayList<Marker>)。

如果您调用了 setMyLocationEnabled(true),那么如何获取 MyLocation 标记? - theblang
@mattblang:那不是一个“标记”,因此您无法将其检索为一个标记。 - CommonsWare
这个SO答案提供了一个简单的方法来缩放地图以包含所有标记,但是如果我想要包括MyLocation标记,那么解决方案可能会更加复杂。 - theblang
@mattblang:理论上,如果您使用LocationClient,则应该获得与地图使用的相同位置数据,因此您只需将其添加到LatLngBounds.Builder中。 - CommonsWare
我将这个问题转移到了一个新的SO问题 - theblang
显示剩余2条评论

7
替代CommonsWare的正确答案是使用Android Maps Extensions,它在GoogleMap中添加了getMarkers()函数。
顺便说一下,从Maps V1中的mapView.getOverlays().add(overlay)代码来看,这是一个非常糟糕的设计选择。您不应该将List交给修改。因此,这与Extensions库不兼容。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接