Controllare il comportamento della collisione

Seleziona la piattaforma: Android iOS JavaScript

Il comportamento di collisione controlla la modalità di visualizzazione di un indicatore se si scontra (si sovrappone) con un altro indicatore.

Impostare il comportamento di collisione per un indicatore

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

  • GMSCollisionBehaviorRequired (impostazione predefinita): mostra sempre il marcatore indipendentemente dalla collisione. Questo è il comportamento predefinito. Non ha alcun impatto sulla visualizzazione di altri indicatori o etichette della basemap.

  • GMSCollisionBehaviorOptionalAndHidesLowerPriority: Mostra il marcatore solo se non si sovrappone ad altri marcatori. Se due indicatori di questo tipo si sovrappongono, viene mostrato quello con il zIndex più alto. Se hanno lo stesso zIndex, viene visualizzato quello con la posizione verticale dello schermo più bassa.

  • GMSCollisionBehaviorRequiredAndHidesOptional: mostra sempre il marcatore indipendentemente dalla collisione e nascondi GMSCollisionBehaviorOptionalAndHidesLowerPriority. Visualizza il marcatore solo se non si sovrappone ad altri marcatori. Non GMSCollisionBehaviorRequired. Se due indicatori di questo tipo si sovrappongono, viene visualizzato quello con il zIndex più alto. Le regole di collisione per i marcatori 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