GoogleMaps Framework Reference
Stay organized with collections
Save and categorize content based on your preferences.
Protocols
The following protocols are available globally.
-
An interface representing a feature’s metadata.
Do not save a reference to a particular feature object because the reference will not be stable.
Declaration
Swift
protocol Feature : NSObjectProtocol
Objective-C
@protocol GMSFeature <NSObject>
-
Declaration
Swift
protocol GMSIndoorDisplayDelegate : NSObjectProtocol
Objective-C
@protocol GMSIndoorDisplayDelegate <NSObject>
-
Declaration
Swift
protocol GMSMapViewDelegate : NSObjectProtocol
Objective-C
@protocol GMSMapViewDelegate <NSObject>
-
Declaration
Swift
protocol GMSPanoramaViewDelegate : NSObjectProtocol
Objective-C
@protocol GMSPanoramaViewDelegate <NSObject>
-
GMSTileReceiver
is provided to GMSTileLayer
when a tile request is made, allowing the
callback to be later (or immediately) invoked.
Declaration
Swift
protocol GMSTileReceiver : NSObjectProtocol
Objective-C
@protocol GMSTileReceiver <NSObject>
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 details globally available protocols for the Google Maps SDK for iOS.\u003c/p\u003e\n"],["\u003cp\u003eThese protocols define interfaces for features, indoor displays, map views, panorama views, and tile receivers.\u003c/p\u003e\n"],["\u003cp\u003eThe protocols act as delegates, receiving events and providing callbacks for interactions with map elements.\u003c/p\u003e\n"],["\u003cp\u003eDevelopers use these protocols to customize the behavior and appearance of map features within their iOS applications.\u003c/p\u003e\n"],["\u003cp\u003eIt is crucial to note that feature object references are not stable and should not be stored for extended use.\u003c/p\u003e\n"]]],[],null,["# GoogleMaps Framework Reference\n\nProtocols\n=========\n\nThe following protocols are available globally.\n- `\n ``\n ``\n `\n\n ### [GMSFeature](/maps/documentation/ios-sdk/reference/objc/Protocols/GMSFeature)\n\n `\n ` \n An interface representing a feature's metadata.\n\n Do not save a reference to a particular feature object because the reference will not be stable. \n\n #### Declaration\n\n Swift \n\n protocol Feature : NSObjectProtocol\n\n Objective-C \n\n @protocol GMSFeature \u003cNSObject\u003e\n\n- `\n ``\n ``\n `\n\n ### [GMSIndoorDisplayDelegate](/maps/documentation/ios-sdk/reference/objc/Protocols/GMSIndoorDisplayDelegate)\n\n `\n ` \n Delegate for events on [GMSIndoorDisplay](/maps/documentation/ios-sdk/reference/objc/Classes/GMSIndoorDisplay). \n\n #### Declaration\n\n Swift \n\n protocol GMSIndoorDisplayDelegate : NSObjectProtocol\n\n Objective-C \n\n @protocol GMSIndoorDisplayDelegate \u003cNSObject\u003e\n\n- `\n ``\n ``\n `\n\n ### [GMSMapViewDelegate](/maps/documentation/ios-sdk/reference/objc/Protocols/GMSMapViewDelegate)\n\n `\n ` \n Delegate for events on [GMSMapView](/maps/documentation/ios-sdk/reference/objc/Classes/GMSMapView). \n\n #### Declaration\n\n Swift \n\n protocol GMSMapViewDelegate : NSObjectProtocol\n\n Objective-C \n\n @protocol GMSMapViewDelegate \u003cNSObject\u003e\n\n- `\n ``\n ``\n `\n\n ### [GMSPanoramaViewDelegate](/maps/documentation/ios-sdk/reference/objc/Protocols/GMSPanoramaViewDelegate)\n\n `\n ` \n Delegate for events on [GMSPanoramaView](/maps/documentation/ios-sdk/reference/objc/Classes/GMSPanoramaView). \n\n #### Declaration\n\n Swift \n\n protocol GMSPanoramaViewDelegate : NSObjectProtocol\n\n Objective-C \n\n @protocol GMSPanoramaViewDelegate \u003cNSObject\u003e\n\n- `\n ``\n ``\n `\n\n ### [GMSTileReceiver](/maps/documentation/ios-sdk/reference/objc/Protocols/GMSTileReceiver)\n\n `\n ` \n `GMSTileReceiver` is provided to [GMSTileLayer](/maps/documentation/ios-sdk/reference/objc/Classes/GMSTileLayer) when a tile request is made, allowing the\n callback to be later (or immediately) invoked. \n\n #### Declaration\n\n Swift \n\n protocol GMSTileReceiver : NSObjectProtocol\n\n Objective-C \n\n @protocol GMSTileReceiver \u003cNSObject\u003e"]]