Über das Konfliktverhalten wird festgelegt, wie eine Markierung angezeigt werden soll, wenn sie sich mit einer anderen Markierung überschneidet.
Konfliktverhalten für eine Markierung festlegen
Um das Konfliktverhalten zu konfigurieren, legen Sie einen der folgenden Werte für GMSAdvancedMarker.collisionBehavior fest:
- GMSCollisionBehaviorRequired(Standard): Die Markierung wird unabhängig von Konflikten mit anderen Markierungen immer angezeigt. Das ist das Standardverhalten. Hat keine Auswirkungen darauf, ob andere Markierungen oder Kartenbeschriftungen 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- zIndexangezeigt. Falls beide denselben- zIndexhaben, wird die Markierung mit der niedrigeren vertikalen Bildschirmposition angezeigt.
- GMSCollisionBehaviorRequiredAndHidesOptional: Die Markierung wird unabhängig von Konflikten mit anderen Markierungen immer angezeigt.- GMSCollisionBehaviorOptionalAndHidesLowerPriority-Markierungen oder Labels, die sich mit ihr überschneiden würden, werden ausgeblendet. Die Markierung wird nur dann angezeigt, wenn sie sich nicht mit anderen Markierungen überschneidet. Entspricht nicht- GMSCollisionBehaviorRequired. Wenn sich zwei Markierungen dieses Typs überschneiden, wird die Markierung mit dem höheren- zIndexangezeigt. Kollisionsregeln für Markierungen mit demselben- zIndexsind 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