Controllare il comportamento della collisione

Seleziona la piattaforma: Android iOS JavaScript

Il comportamento di collisione controlla il modo in cui viene visualizzato un indicatore se entra in collisione (si sovrappone) con un altro indicatore.

Impostare il comportamento di collisione per un indicatore

Per impostare il comportamento in caso di collisione, imposta GMSAdvancedMarker.collisionBehavior su uno dei seguenti valori:

  • GMSCollisionBehaviorRequired (impostazione predefinita): mostra sempre l'indicatore, indipendentemente dalla collisione. Questo è il comportamento predefinito. Non influisce sulla visualizzazione di altri indicatori o etichette della mappa di base.

  • GMSCollisionBehaviorOptionalAndHidesLowerPriority: mostra l'indicatore solo se non si sovrappone ad altri indicatori. Se due indicatori di questo tipo si sovrappongono, viene visualizzato quello con zIndex più elevato. Se hanno lo stesso zIndex, viene mostrata quella con la posizione dello schermo verticale più bassa.

  • GMSCollisionBehaviorRequiredAndHidesOptional: mostra sempre l'indicatore indipendentemente dalla collisione e nascondi eventuali GMSCollisionBehaviorOptionalAndHidesLowerPriority. Mostra l'indicatore solo se non si sovrappone ad altri indicatori. Non GMSCollisionBehaviorRequired. Se due indicatori di questo tipo si sovrappongono, viene visualizzato quello con il valore zIndex più elevato. Le regole di collisione per gli indicatori con lo stesso zIndex non sono definite.

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