控制冲突行为

请选择平台: Android iOS JavaScript

冲突行为用于控制标记与其他标记冲突(重叠)时的显示方式。

设置标记的冲突行为

如需设置冲突行为,请将 GMSAdvancedMarker.collisionBehavior 设置为以下其中一项:

  • GMSCollisionBehaviorRequired(默认):无论是否冲突,一律显示标记。这是默认行为。对是否显示任何其他标记或底图标签没有影响。

  • GMSCollisionBehaviorOptionalAndHidesLowerPriority:标记仅在未与其他标记重叠时才显示。如果两个同属于这种类型的标记发生重叠,则会显示 zIndex 较高的那个标记。如果二者的 zIndex 也相同,则会显示在屏幕上纵向位置较低的那个标记。

  • GMSCollisionBehaviorRequiredAndHidesOptional:始终显示标记(无论是否冲突),并隐藏所有 GMSCollisionBehaviorOptionalAndHidesLowerPriority。标记仅在未与其他标记重叠时才显示。不GMSCollisionBehaviorRequired。如果两个同属于这种类型的标记发生重叠,则会显示 zIndex 较高的那个标记。对于具有相同 zIndex 的标记,碰撞规则未定义。

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