Controllare il comportamento della collisione

Seleziona la piattaforma: Android iOS JavaScript

Il comportamento di collisione controlla la modalità di visualizzazione di 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 mostrato quello con il valore zIndex più alto. Se hanno lo stesso zIndex, viene mostrata quella con la posizione verticale dello schermo 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ù alto. 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