2017-05-09 167 views
1

我在我的應用程序中使用谷歌地圖SDK,並在選定的let上繪製標記,並在標記上作出組我使用GMUClusterManager在標記上添加集羣,但是,問題來改變標記的圖像,如果我用GMUClusterManager繪製標記,那麼沒有選項來改變標記圖像。所以當用戶放大地圖或者改變製造商的圖像時,任何人都可以通過其他方式來確定所有標記的組合。在集羣上自定義谷歌地圖上的標記

回答

5

創建後您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