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