Zachowanie w przypadku kolizji określa sposób wyświetlania znacznika, gdy koliduje (nakłada się) z innym znacznikiem.
Ustawianie zachowania w przypadku kolizji znacznika
Aby określić zachowanie w przypadku kolizji, ustaw wartość parametru
GMSAdvancedMarker.collisionBehavior
na jedną z tych opcji:
GMSCollisionBehaviorRequired
(domyślnie): zawsze wyświetlaj znacznik niezależnie od kolizji. Jest to zachowanie domyślne. Nie ma wpływu na to, czy wyświetlają się inne znaczniki lub etykiety mapy bazowej.GMSCollisionBehaviorOptionalAndHidesLowerPriority
: wyświetlaj znacznik tylko wtedy, gdy nie zachodzi na inne znaczniki. Jeśli 2 takie znaczniki nakładają się na siebie, wyświetla się ten z wyższymzIndex
. Jeśli mają ten samzIndex
, wyświetlana jest pozycja z niższym pionowym położeniem ekranu.GMSCollisionBehaviorRequiredAndHidesOptional
: zawsze wyświetlaj znacznik niezależnie od kolizji i ukrywaj wszystkie inne znacznikiGMSCollisionBehaviorOptionalAndHidesLowerPriority
. Wyświetlaj znacznik tylko wtedy, gdy nie nakłada się on na inne znaczniki. Nie zawieraGMSCollisionBehaviorRequired
. Jeśli 2 takie znaczniki nakładają się na siebie, wyświetla się ten o większymzIndex
. Reguły dotyczące kolizji markerów z tym samymzIndex
są niezdefiniowane.
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