GMSCollisionBehavior
enum GMSCollisionBehavior : NSInteger {}
How markers interact with other markers and regular labels. Defaults to
GMSCollisionBehaviorRequired
.
Marker collisions occur when coordinates intersect.
Priority is defined as: 1) Required > Optional 2) zIndex: higher zIndex > lower zIndex
Beyond this, it is undefined which marker will show if both are optional and have the same zIndex. Regular map labels are the lowest priority.
-
Always display the marker regardless of collision. This is the default behavior. Has no impact on whether any other markers or basemap labels show.
Declaration
Swift
case required = 0
Objective-C
GMSCollisionBehaviorRequired
-
Always display the marker regardless of collision, and hide any CollisionBehaviorOptionalAndHidesLowerPriority markers or labels that would overlap with the marker.
Declaration
Swift
case requiredAndHidesOptional = 1
Objective-C
GMSCollisionBehaviorRequiredAndHidesOptional
-
Display the marker only if it does not overlap with other markers. Does not include
GMSCollisionBehaviorRequired
. If two markers of this type would overlap, the one with the higher zIndex is shown. Collision rules for markers with the same zIndex is undefined.Declaration
Swift
case optionalAndHidesLowerPriority = 2
Objective-C
GMSCollisionBehaviorOptionalAndHidesLowerPriority