Kontrolowanie zachowania w przypadku kolizji

Wybierz platformę: Android iOS JavaScript

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ższym zIndex. Jeśli mają ten sam zIndex, 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 zawiera GMSCollisionBehaviorRequired. Jeśli 2 takie znaczniki nakładają się na siebie, wyświetla się ten o większym zIndex. Reguły dotyczące kolizji markerów z tym samym zIndex 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