删除 google 中的特定标记 iOS 地图聚类

Remove a particular marker in google map clustering in iOS

我在 google 地图中使用 GMUClusterItem 来加载项目。

我可以使用以下代码(示例)加载项目

  let item = POIItem(position: CLLocationCoordinate2DMake(38.6646184, -120.9465773, name: "")           
  clusterManager.add(item)

工作正常

但我的问题是删除特定项目。

我尝试了下面的代码

  let item = POIItem(position: CLLocationCoordinate2DMake(38.6646184, -120.9465773), name: "")
  clusterManager.remove(item)

但它不起作用

这有错吗?如果是这样,请帮我删除特定项目。

谢谢

用 POIItem 的

创建数组
var markers: [POIItem] = []

在添加到集群之前将 POIItem 附加到数组

markers.append(item)

当您想从集群中删除标记时

if let marker = markers.first as? GMUClusterItem { 
   clusterManager.remove(marker)
}

您的代码 clusterManager.remove(item) 确实从地图上删除了标记,但您是否刷新了地图?您需要再次调用 clusterManager.cluster() 来更新地图渲染。

DispatchQueue.main.async {
    self.clusterManager.cluster()
}

(使用 Swift 3)