GoogleMaps Framework Reference

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 
     
    
Create a Mobile Website
View Site in Mobile | Classic
Share by: