在集群上自定义谷歌地图上的标记
问题描述:
我在我的应用程序中使用谷歌地图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
非常感谢DatForis的工作。 –
太棒了!一定要记住稍后@Chetansharma将其标记为答案 – DatForis