衝突時動作を制御する

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

重なった場合の動作とは、マーカーの表示位置が他のマーカーと重なった際にどのように表示されるかということです。

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

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

  • GMSCollisionBehaviorRequired(デフォルト): 他のマーカーと重なっていても常に表示されます。これはデフォルトの動作です。他のマーカーやベースマップ ラベルが表示されるかどうかには影響しません。

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

  • GMSCollisionBehaviorRequiredAndHidesOptional: 他のマーカーと重なっても常に表示されますが、GMSCollisionBehaviorOptionalAndHidesLowerPriority はすべて非表示になります。他のマーカーと重ならない場合にのみ表示されます。GMSCollisionBehaviorRequired ではありません。このタイプのマーカー同士が重なった場合、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