Controllare il comportamento della collisione

Seleziona la piattaforma: Android iOS JavaScript

Il comportamento di collisione controlla la visualizzazione di un indicatore in caso di collisione (sovrapposizione) con un altro indicatore.

Impostare il comportamento di collisione per un indicatore

Per impostare il comportamento della sovrapposizione, 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 basemap.

  • 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 visualizzato quello con la posizione verticale dello schermo più bassa.

  • GMSCollisionBehaviorRequiredAndHidesOptional: mostra sempre l'indicatore, indipendentemente dalla collisione, e nasconde qualsiasi 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 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