2017-05-09 11 views
1

私は自分のアプリケーションでGoogleマップSDKを使用しています。選択した長時間のマーカーをマーカーに作っています。GMUClusterManagerを使ってマーカー上にクラスターを追加していますが、私がGMUClusterManagerでマーカーを描くと、マーカー画像を変更するオプションはありません。したがって、ユーザーが地図をズームインするとき、またはマーカーの画像を変更するときに、すべてのマーカーのグループを作成する他の方法も知っています。あなたのGMUDefaultClusterRendererを作成した後クラスタでGoogleマップのマーカーをカスタマイズする

答えて

5

は、私は私が働いていたビューコントローラを使用して、あなたは、プロトコルからfunc renderer(_ renderer: GMUClusterRenderer, willRenderMarker marker: GMSMarker)を実装その後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) 

を実装し、そのデリゲートを設定します。この方法では、マーカーとマーカーに囲まれたデータにアクセスできます。 If letステートメントを使用してデータにアクセスし、マーカーにアイコンを表示します。if let markerData = marker.userData

+0

ありがとう、DatForis、その動作。 –

+0

恐ろしい!後で答えとしてマークすることを覚えておいてください@Chetansharma – DatForis

関連する問題