GoogleMaps Framework Reference
Stay organized with collections
Save and categorize content based on your preferences.
Enumerations
The following enumerations are available globally.
-
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.
Declaration
Swift
enum GMSCollisionBehavior : Int, @unchecked Sendable
Objective-C
enum GMSCollisionBehavior : NSInteger {}
-
Declaration
Swift
enum GMSGeocoderErrorCode : Int, @unchecked Sendable
Objective-C
enum GMSGeocoderErrorCode : NSInteger {}
-
Flags that represent conditionally-available map capabilities (ones that require a mapID or some
other map setting) that can be used to indicate availability.
Declaration
Swift
struct GMSMapCapabilityFlags : OptionSet, @unchecked Sendable
Objective-C
enum GMSMapCapabilityFlags : NSUInteger {}
-
Declaration
Swift
enum GMSMapViewType : UInt, @unchecked Sendable
Objective-C
enum GMSMapViewType : NSUInteger {}
-
Declaration
Swift
enum GMSFrameRate : UInt, @unchecked Sendable
Objective-C
enum GMSFrameRate : NSUInteger {}
-
Constants indicating how safe area insets are added to padding.
Declaration
Swift
enum GMSMapViewPaddingAdjustmentBehavior : UInt, @unchecked Sendable
Objective-C
enum GMSMapViewPaddingAdjustmentBehavior : NSUInteger {}
-
Animation types for GMSMarker.
Declaration
Swift
enum GMSMarkerAnimation : UInt, @unchecked Sendable
Objective-C
enum GMSMarkerAnimation : NSUInteger {}
-
Source types for Panoramas. Used to specify the source of a StreetView Panorama.
This API is experimental. Results may not always match expectations.
Declaration
Swift
enum GMSPanoramaSource : UInt, @unchecked Sendable
Objective-C
enum GMSPanoramaSource : NSUInteger {}
-
GMSLengthKind
indicates the type of a length value, which can be geodesic (in meters), rhumb
length (in meters) and projected length (in GMSMapPoint
units).
Declaration
Swift
enum GMSLengthKind : UInt, @unchecked Sendable
Objective-C
enum GMSLengthKind : NSUInteger {}
Except as otherwise noted, the content of this page is licensed under the Creative Commons Attribution 4.0 License, and code samples are licensed under the Apache 2.0 License. For details, see the Google Developers Site Policies. Java is a registered trademark of Oracle and/or its affiliates.
Last updated 2025-08-27 UTC.
[null,null,["Last updated 2025-08-27 UTC."],[[["\u003cp\u003eThis documentation outlines globally available enumerations for the Google Maps SDK for iOS.\u003c/p\u003e\n"],["\u003cp\u003eEnumerations define constants for marker behaviors, geocoder error codes, map capabilities, and more.\u003c/p\u003e\n"],["\u003cp\u003e\u003ccode\u003eGMSCollisionBehavior\u003c/code\u003e dictates how markers interact, prioritizing 'required' over 'optional' and higher zIndex values.\u003c/p\u003e\n"],["\u003cp\u003e\u003ccode\u003eGMSMapViewType\u003c/code\u003e lists display types for the map view like 'normal', 'satellite', 'hybrid', and 'terrain'.\u003c/p\u003e\n"],["\u003cp\u003eOther enumerations manage aspects like frame rates, padding adjustments, marker animations, and panorama sources.\u003c/p\u003e\n"]]],["The provided content defines globally available enumerations for the iOS Google Maps SDK. These enumerations include: `GMSCollisionBehavior` for marker interactions; `GMSGeocoderErrorCode` for error handling; `GMSMapCapabilityFlags` for map features; `GMSMapViewType` for display options; `GMSFrameRate` for rendering rates; `GMSMapViewPaddingAdjustmentBehavior` for padding settings; `GMSMarkerAnimation` for marker animation styles; `GMSPanoramaSource` for Street View sources; and `GMSLengthKind` for length value types. Each enumeration has Swift and Objective-C declarations.\n"],null,["# GoogleMaps Framework Reference\n\nEnumerations\n============\n\nThe following enumerations are available globally.\n- `\n ``\n ``\n `\n\n ### [GMSCollisionBehavior](/maps/documentation/ios-sdk/reference/objc/Enums/GMSCollisionBehavior)\n\n `\n ` \n How markers interact with other markers and regular labels. Defaults to\n `GMSCollisionBehaviorRequired`.\n\n Marker collisions occur when coordinates intersect.\n\n Priority is defined as:\n 1) Required \\\u003e Optional\n 2) zIndex: higher zIndex \\\u003e lower zIndex\n\n Beyond this, it is undefined which marker will show if both are optional and have the same\n zIndex.\n Regular map labels are the lowest priority. \n\n #### Declaration\n\n Swift \n\n enum GMSCollisionBehavior : Int, @unchecked Sendable\n\n Objective-C \n\n enum GMSCollisionBehavior : NSInteger {}\n\n- `\n ``\n ``\n `\n\n ### [GMSGeocoderErrorCode](/maps/documentation/ios-sdk/reference/objc/Enums/GMSGeocoderErrorCode)\n\n `\n ` \n [GMSGeocoder](/maps/documentation/ios-sdk/reference/objc/Classes/GMSGeocoder) error codes, embedded in NSError. \n\n #### Declaration\n\n Swift \n\n enum GMSGeocoderErrorCode : Int, @unchecked Sendable\n\n Objective-C \n\n enum GMSGeocoderErrorCode : NSInteger {}\n\n- `\n ``\n ``\n `\n\n ### [GMSMapCapabilityFlags](/maps/documentation/ios-sdk/reference/objc/Enums/GMSMapCapabilityFlags)\n\n `\n ` \n Flags that represent conditionally-available map capabilities (ones that require a mapID or some\n other map setting) that can be used to indicate availability. \n\n #### Declaration\n\n Swift \n\n struct GMSMapCapabilityFlags : OptionSet, @unchecked Sendable\n\n Objective-C \n\n enum GMSMapCapabilityFlags : NSUInteger {}\n\n- `\n ``\n ``\n `\n\n ### [GMSMapViewType](/maps/documentation/ios-sdk/reference/objc/Enums/GMSMapViewType)\n\n `\n ` \n Display types for [GMSMapView](/maps/documentation/ios-sdk/reference/objc/Classes/GMSMapView). \n\n #### Declaration\n\n Swift \n\n enum GMSMapViewType : UInt, @unchecked Sendable\n\n Objective-C \n\n enum GMSMapViewType : NSUInteger {}\n\n- `\n ``\n ``\n `\n\n ### [GMSFrameRate](/maps/documentation/ios-sdk/reference/objc/Enums/GMSFrameRate)\n\n `\n ` \n Rendering frame rates for [GMSMapView](/maps/documentation/ios-sdk/reference/objc/Classes/GMSMapView). \n\n #### Declaration\n\n Swift \n\n enum GMSFrameRate : UInt, @unchecked Sendable\n\n Objective-C \n\n enum GMSFrameRate : NSUInteger {}\n\n- `\n ``\n ``\n `\n\n ### [GMSMapViewPaddingAdjustmentBehavior](/maps/documentation/ios-sdk/reference/objc/Enums/GMSMapViewPaddingAdjustmentBehavior)\n\n `\n ` \n Constants indicating how safe area insets are added to padding. \n\n #### Declaration\n\n Swift \n\n enum GMSMapViewPaddingAdjustmentBehavior : UInt, @unchecked Sendable\n\n Objective-C \n\n enum GMSMapViewPaddingAdjustmentBehavior : NSUInteger {}\n\n- `\n ``\n ``\n `\n\n ### [GMSMarkerAnimation](/maps/documentation/ios-sdk/reference/objc/Enums/GMSMarkerAnimation)\n\n `\n ` \n Animation types for GMSMarker. \n\n #### Declaration\n\n Swift \n\n enum GMSMarkerAnimation : UInt, @unchecked Sendable\n\n Objective-C \n\n enum GMSMarkerAnimation : NSUInteger {}\n\n- `\n ``\n ``\n `\n\n ### [GMSPanoramaSource](/maps/documentation/ios-sdk/reference/objc/Enums/GMSPanoramaSource)\n\n `\n ` \n Source types for Panoramas. Used to specify the source of a StreetView Panorama.\n\n This API is experimental. Results may not always match expectations. \n\n #### Declaration\n\n Swift \n\n enum GMSPanoramaSource : UInt, @unchecked Sendable\n\n Objective-C \n\n enum GMSPanoramaSource : NSUInteger {}\n\n- `\n ``\n ``\n `\n\n ### [GMSLengthKind](/maps/documentation/ios-sdk/reference/objc/Enums/GMSLengthKind)\n\n `\n ` \n `GMSLengthKind` indicates the type of a length value, which can be geodesic (in meters), rhumb\n length (in meters) and projected length (in [GMSMapPoint](/maps/documentation/ios-sdk/reference/objc/Structs/GMSMapPoint) units). \n\n #### Declaration\n\n Swift \n\n enum GMSLengthKind : UInt, @unchecked Sendable\n\n Objective-C \n\n enum GMSLengthKind : NSUInteger {}"]]