衝突時動作を制御する

プラットフォームを選択: Android iOS JavaScript

重なった場合の動作とは、マーカーが別のマーカーと衝突(重なった)したときの表示方法のことです。

マーカーが重なった場合の動作を設定する

重なった場合の動作を設定するには、GMSAdvancedMarker.collisionBehavior を次のいずれかに設定します。

  • GMSCollisionBehaviorRequired(デフォルト): 他のマーカーと重なっていても常に表示されます。これはデフォルトの動作です。他のマーカーや基本地図ラベルの表示の可否には影響しません。

  • GMSCollisionBehaviorOptionalAndHidesLowerPriority: 他のマーカーと位置が重ならない場合にだけ表示されます。このタイプのマーカーが 2 つ重なった場合は、zIndex の高いほうが表示されます。zIndex が同じ場合は、画面内の縦位置が低いほうが表示されます。

  • GMSCollisionBehaviorRequiredAndHidesOptional: 他のマーカーと重なっても常に表示し、GMSCollisionBehaviorOptionalAndHidesLowerPriority は非表示にします。他のマーカーと位置が重ならない場合にだけ表示されます。GMSCollisionBehaviorRequired は行われません。このタイプのマーカーが 2 つ重なった場合は、zIndex の高いほうが表示されます。zIndex が同じマーカーの競合ルールは定義されません。

Swift

// Defines a marker to always display and hide any marker or label overlay with this marker in the base map
marker.collisionBehavior = .requiredAndHidesOptional

Objective-C

// Defines a marker to always display and hide any marker or label overlay with this marker in the base map
marker.collisionBehavior = GMSCollisionBehaviorRequiredAndHidesOptional