18

我在 GMSMapView 上放置了 100 个 GMSMarkers。如何删除所有 GMSMarkers?

在适用于 iOS 的 Google Sdk 版本 1.6 中。

将保存 GMSMarkers 列表的标记数组(在 GMSMapView (Overlays) 文件中)已弃用。通过使用它,我从 GMSMapView 中删除了所有 GMSMarker。

有没有其他方法可以从 iOS 中的 GMSMapView 中删除所有 GMSMarker?

4

6 回答 6

42

用于[mapView clear]实现所需的功能。:-)

更新:

迅速:

mapView.clear()
于 2013-12-05T10:21:41.777 回答
10

他们弃用了这些方法,但您可以使用[mapView clear]它从地图中删除所有叠加层。这包括所有标记、折线和groundOverlays。

希望能帮助到你!

于 2013-11-25T02:08:29.937 回答
5

在将所有标记添加到地图时,将它们添加到 NSMutableArray。然后,当您需要删除它们时,遍历数组并将每个标记的 .map 属性设置为 nil。

于 2015-01-13T16:15:55.390 回答
2

斯威夫特 5.x

如果有人只想清除一个特定的marker,那么你可以使用这个:

marker.map = nil

如果您想从地图中删除所有内容,例如等polylinemarker那么您可以使用

self.mapView.clear().

它将清除地图上的所有内容。

于 2020-02-24T08:52:42.363 回答
1

斯威夫特 4.x

self.mapView.clear()
于 2019-01-02T14:08:21.580 回答
0

尝试.....

[self.MapView clear];
于 2017-02-06T06:52:24.217 回答