iOS SDK
Tutorials
API Reference
- MGLTileCoordinateSystem
- MGLComputedShapeSource
- MGLSphericalPosition
- MGLUserLocationAnnotationViewStyle
- MGLDistanceFormatter
- MGLStyleLayer
- MGLMapDebugMaskOptions
- MGLSymbolZOrder
- MGLShape
- MGLLineTranslationAnchor
- MGLMultiPoint
- MGLOfflinePack
- Style Primitives
- MGLMultiPolyline
- MGLTextAnchor
- Primitive Shapes
- MGLIconTranslationAnchor
- NSValue(MGLFillStyleLayerAdditions)
- MGLAnnotation
- NSExpression(MGLAdditions)
- MGLTextJustification
- MGLUserLocationAnnotationView
- MGLMultiPolygon
- MGLCircleStyleLayer
- MGLCoordinateSpan
- MGLNetworkConfiguration
- MGLTextWritingMode
- Other Enumerations
- MGLUserLocation
- MGLCalloutView
- MGLAttributedExpression
- MGLImageSource
- MGLOfflinePackProgress
- MGLIconAnchor
- MGLFillStyleLayer
- MGLFillTranslationAnchor
- Appendices
- MGLOfflinePackProgress
- MGLComputedShapeSourceDataSource
- NSValue(MGLLineStyleLayerAdditions)
- MGLStylable
- MGLRasterResamplingMode
- Geometry
- MGLPolygon
- Location Updates
- MGLClockDirectionFormatter
- NSValue(MGLFillExtrusionStyleLayerAdditions)
- MGLCoordinateSpan
- MGLCluster
- MGLErrorCode
- MGLAccountManager
- MGLForegroundStyleLayer
- MGLRasterTileSource
- MGLTextPitchAlignment
- MGLResourceKind
- MGLMapSnapshotterDelegate
- MGLAnnotationImage
- MGLHillshadeStyleLayer
- MGLOrnamentPosition
- MGLAnnotationViewDragState
- MGLDEMEncoding
- MGLSource
- MGLIconPitchAlignment
- MGLCalloutViewDelegate
- MGLVectorStyleLayer
- MGLRasterStyleLayer
- MGLLoggingConfiguration
- MGLLightAnchor
- Other Categories
- MGLTransition
- MGLLocationManager
- MGLLoggingLevel
- MGLTextTranslationAnchor
- MGLCompassButton
- MGLShapeSource
- NSValue(MGLRasterStyleLayerAdditions)
- MGLAnnotationVerticalAlignment
- MGLPolyline
- Maps
- MGLMapCamera
- MGLOfflineStorage
- Other Type Definitions
- MGLSphericalPosition
- MGLShapeCollection
- NSValue(MGLAdditions)
- Style Content
- MGLSymbolPlacement
- MGLTransition
- Other Classes
- MGLPointCollection
- MGLMapViewDelegate
- Style Layers
- MGLMapSnapshotOverlay
- MGLCoordinateQuad
- MGLTextTransform
- MGLOverlay
- MGLUserTrackingMode
- MGLTileSource
- MGLHillshadeIlluminationAnchor
- MGLTextRotationAlignment
- NSValue(MGLHillshadeStyleLayerAdditions)
- MGLOfflinePackState
- Formatters
- MGLLocationManagerDelegate
- MGLAttributionInfoStyle
- MGLBackgroundStyleLayer
- Styling the Map
- MGLCoordinateBounds
- MGLFillExtrusionTranslationAnchor
- Offline Maps
- MGLCoordinateFormatter
- MGLOrnamentVisibility
- MGLStyle
- MGLFeature
- MGLOfflineRegion
- MGLMapView
- MGLShapeOfflineRegion
- Other Structures
- MGLCirclePitchAlignment
- NSValue(MGLCircleStyleLayerAdditions)
- MGLMapSnapshot
- MGLFillExtrusionStyleLayer
- MGLCoordinateQuad
- MGLMapSnapshotOptions
- Other Protocols
- MGLLineCap
- MGLSymbolStyleLayer
- Other Functions
- MGLCircleTranslationAnchor
- MGLLineJoin
- MGLAnnotationView
- MGLCircleScaleAlignment
- MGLPointAnnotation
- MGLMapSnapshotter
- MGLLineStyleLayer
- MGLAttributionInfo
- MGLCompassDirectionFormatter
- MGLCoordinateBounds
- MGLTilePyramidOfflineRegion
- MGLIconRotationAlignment
- MGLIconTextFit
- Other Constants
- NSValue(MGLSymbolStyleLayerAdditions)
- Annotations
- MGLLight
- MGLHeatmapStyleLayer
- MGLOfflineStorageDelegate
- MGLVectorTileSource
- User Interaction
On This Page
MGLAnnotation
@protocol MGLAnnotation <NSObject>
The MGLAnnotation
protocol is used to provide annotation-related information to a map view. To use this protocol, you adopt it in any custom objects that store or represent annotation data. Each object then serves as the source of information about a single map annotation and provides critical information, such as the annotation’s location on the map. Annotation objects do not provide the visual representation of the annotation but typically coordinate (in conjunction with the map view’s delegate) the creation of an appropriate objects to handle the display.
An object that adopts this protocol must implement the coordinate
property. The other methods of this protocol are optional.
Position Attributes
coordinate
The center point (specified as a map coordinate) of the annotation. (required) (read-only)
Declaration
Objective-C
@property (nonatomic, readonly) CLLocationCoordinate2D coordinate;
Swift
var coordinate: CLLocationCoordinate2D { get }
Title Attributes
title
The string containing the annotation’s title.
Although this property is optional, if you support the selection of annotations in your map view, you are expected to provide this property. This string is displayed in the callout for the associated annotation.
Declaration
Objective-C
@optional
@property (nonatomic, copy, readonly, nullable) NSString *title;
Swift
optional var title: String? { get }
subtitle
The string containing the annotation’s subtitle.
This string is displayed in the callout for the associated annotation.
Declaration
Objective-C
@optional
@property (nonatomic, copy, readonly, nullable) NSString *subtitle;
Swift
optional var subtitle: String? { get }