在集群上自定义谷歌地图上的标记

在集群上自定义谷歌地图上的标记

问题描述:

我在我的应用程序中使用谷歌地图SDK,并在选定的let上绘制标记,并在标记上作出组我使用GMUClusterManager在标记上添加集群,但是,问题来改变标记的图像,如果我用GMUClusterManager绘制标记,那么没有选项来改变标记图像。所以当用户放大地图或者改变制造商的图像时,任何人都可以通过其他方式来确定所有标记的组合。在集群上自定义谷歌地图上的标记

创建后您GMUDefaultClusterRenderer设置其委托我用我的工作在视图控制器,然后实现GMUClusterRendererDelegate

let iconGenerator = GMUDefaultClusterIconGenerator() 
let algorithm = GMUNonHierarchicalDistanceBasedAlgorithm() 
let renderer = GMUDefaultClusterRenderer(mapView: mapView, clusterIconGenerator: iconGenerator) 
renderer.delegate = self 
clusterManager = GMUClusterManager(map: mapView, algorithm: algorithm, renderer: renderer) 

后您实现从协议的func renderer(_ renderer: GMUClusterRenderer, willRenderMarker marker: GMSMarker)。此方法可让您访问标记和标记中包含的数据。 使用如果let语句访问数据并给出标记所需的图标if let markerData = marker.userData

+0

非常感谢DatForis的工作。 –

+0

太棒了!一定要记住稍后@Chetansharma将其标记为答案 – DatForis