冲突行为用于控制标记与其他标记冲突(重叠)时的显示方式。
设置标记的冲突行为
如需设置冲突行为,请将 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