2013-03-27 81 views
66

我加入了地图上的片段活动和使用addMarker功能增加了几个标记,但我能够删除所有标记,我得到了不同标记列表通知,清除标记在Android的

现在我想要删除所有标记并添加新标记。保持在列表中的所有标记和删除一个接一个,

的一种方式(marker.remove())

有没有什么更好的办法来清除所有标记。

+2

有清除()方法 – 2013-03-27 16:19:54

回答

165

如果要清除“地图上的所有标记,叠加层和多义线”,请输入use clear() on your GoogleMap

+1

在做这些之前,我应该在它们全部调用remove()吗?我的意思是,如果我仍然拥有带这些标记的ArrayList,我想我仍然对这些标记有一个积极的参考,所以即使我清除地图,它们也会保留在内存中。 我是对的吗?或清除地图抹去对标记的引用? – razielsarafan 2013-03-27 16:24:30

+4

@ santirivera92:“在做这些之前,我应该在所有人上调用remove()吗?” - AFAIK,你不需要。 “如果我仍然有这些标记的ArrayList,我想我仍然对这些标记有一个积极的参考,所以即使我清除地图,它们也会保留在内存中 - ”是的,但那是*你的*代码,不是Google的。如果*你*与地图分开放置'Marker'对象,*您需要放弃这些对象。 'clear()'会将它们*视觉*移除。 – CommonsWare 2013-03-27 16:37:21

+0

当然。那么,清理我的ArrayLists然后清除地图将永远摆脱它们? – razielsarafan 2013-03-27 16:59:30