Le comportement en cas de collision définit comment un repère s'affiche s'il entre en collision avec un autre repère (c'est-à-dire s'ils se chevauchent).
Définir le comportement d'un repère en cas de collision
Pour définir le comportement en cas de collision, définissez GMSAdvancedMarker.collisionBehavior
sur l'une des valeurs suivantes:
GMSCollisionBehaviorRequired
(par défaut): le repère s'affiche toujours, quelle que soit la collision. Il s'agit du comportement par défaut. N'a aucune incidence sur l'affichage d'autres repères ou libellés de la carte de base.GMSCollisionBehaviorOptionalAndHidesLowerPriority
: le repère s'affiche uniquement s'il n'en chevauche pas d'autres. Si deux repères de ce type se chevauchent, celui avec lezIndex
le plus élevé est affiché. S'ils ont le mêmezIndex
, celui dont la position verticale à l'écran est la plus basse est affiché.GMSCollisionBehaviorRequiredAndHidesOptional
: le repère s'affiche toujours, quelle que soit la collision, et lesGMSCollisionBehaviorOptionalAndHidesLowerPriority
sont masqués. Afficher le repère uniquement s'il n'en chevauche pas d'autres. NeGMSCollisionBehaviorRequired
pas. Si deux repères de ce type se chevauchent, celui avec lezIndex
le plus élevé est affiché. Les règles de collision pour les repères avec le mêmezIndex
ne sont pas définies.
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