重なった場合の動作とは、マーカーの表示位置が他のマーカーと重なった際にどのように表示されるかということです。
マーカーが重なった場合の動作を設定する
重なった場合の動作を指定するには、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