Konfliktverhalten steuern

Plattform auswählen: Android iOS JavaScript

Mit dem Konfliktverhalten wird angegeben, wie eine Markierung angezeigt werden soll, wenn sie sich mit einer anderen Markierung überschneidet.

Konfliktverhalten für eine Markierung konfigurieren

Um das Konfliktverhalten zu konfigurieren, legen Sie einen der folgenden Werte für GMSAdvancedMarker.collisionBehavior fest:

  • GMSCollisionBehaviorRequired (Standardeinstellung): Die Markierung wird unabhängig von Konflikten mit anderen Markierungen immer angezeigt. Das ist das Standardverhalten. Hat keine Auswirkungen darauf, ob andere Markierungen oder Basemap-Labels angezeigt werden.

  • GMSCollisionBehaviorOptionalAndHidesLowerPriority: Die Markierung wird nur dann angezeigt, wenn sie sich nicht mit anderen Markierungen überschneidet. Wenn sich zwei Markierungen dieses Typs überschneiden, wird die Markierung mit dem höheren zIndex angezeigt. Falls beide denselben zIndex haben, wird die Markierung mit der niedrigeren vertikalen Bildschirmposition angezeigt.

  • GMSCollisionBehaviorRequiredAndHidesOptional: Die Markierung wird unabhängig von Konflikten mit anderen Markierungen immer angezeigt. GMSCollisionBehaviorOptionalAndHidesLowerPriority-Markierungen werden ausgeblendet. Die Markierung wird nur dann angezeigt, wenn sie sich nicht mit anderen Markierungen überschneidet. GMSCollisionBehaviorRequired ist nicht erfüllt. Wenn sich zwei Markierungen dieses Typs überschneiden, wird die Markierung mit dem höheren zIndex angezeigt. Kollisionsregeln für Markierungen mit derselben zIndex sind nicht definiert.

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