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 des autres repères ou libellés de fond de carte.
- 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 le- zIndexle plus élevé est affiché. S'ils ont le même- zIndex, celui dont la position verticale à l'écran est la plus basse est affiché.
- GMSCollisionBehaviorRequiredAndHidesOptional: Toujours afficher le repère, quelle que soit la collision, et masquer les- GMSCollisionBehaviorOptionalAndHidesLowerPriority. Afficher le repère uniquement s'il n'en chevauche pas d'autres. Ne pas- GMSCollisionBehaviorRequired. Si deux repères de ce type se chevauchent, celui avec le- zIndexle plus élevé est affiché. Les règles de collision pour les repères ayant le même- zIndexne 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