O comportamento em caso de conflito controla como um marcador é mostrado em caso de conflito (sobreposição) com outro marcador.
Definir o comportamento em caso de conflito de um marcador
Para escolher o comportamento em caso de conflito, defina GMSAdvancedMarker.collisionBehavior
como uma das seguintes opções:
GMSCollisionBehaviorRequired
(padrão): sempre mostrar o marcador, independentemente do conflito. Esse é o comportamento padrão. Não tem impacto na exibição de outros marcadores ou rótulos de mapa de base.GMSCollisionBehaviorOptionalAndHidesLowerPriority
: só mostrar o marcador se ele não se sobrepuser a outros elementos. Em caso de conflito, o marcador com o maiorzIndex
vai aparecer. Se eles tiverem o mesmozIndex
, aquele com a posição vertical mais abaixo na tela será mostrado.GMSCollisionBehaviorRequiredAndHidesOptional
: sempre mostrar o marcador, independentemente do conflito, e ocultar todos osGMSCollisionBehaviorOptionalAndHidesLowerPriority
. Só mostrar o marcador se ele não se sobrepuser a outros elementos. NãoGMSCollisionBehaviorRequired
. Em caso de conflito, o marcador com o maiorzIndex
vai aparecer. As regras de colisão para marcadores com o mesmozIndex
são indefinidas.
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