Other Protocols

The following protocols are available globally.

MGLCluster

A protocol that feature subclasses (i.e. those already conforming to the MGLFeature protocol) conform to if they represent clusters.

Currently the only class that conforms to MGLCluster is MGLPointFeatureCluster (a subclass of MGLPointFeature).

To check if a feature is a cluster, check conformity to MGLCluster, for example:

let shape = try! MGLShape(data: clusterShapeData, encoding: String.Encoding.utf8.rawValue)

guard let pointFeature = shape as? MGLPointFeature else {
throw ExampleError.unexpectedFeatureType
}

// Check for cluster conformance
guard let cluster = pointFeature as? MGLCluster else {
throw ExampleError.featureIsNotACluster
}

// Currently the only supported class that conforms to `MGLCluster` is
// `MGLPointFeatureCluster`
guard cluster is MGLPointFeatureCluster else {
throw ExampleError.unexpectedFeatureType
}

See more

Declaration

Objective-C

@protocol MGLCluster <MGLFeature>

Swift

protocol MGLCluster

MGLComputedShapeSourceDataSource

Data source for MGLComputedShapeSource. This protocol defines two optional methods for fetching data, one based on tile coordinates, and one based on a bounding box. Classes that implement this protocol must implement one, and only one of the methods. Methods on this protocol will not be called on main thread, they will be called on the caller’s requestQueue.

See more

Declaration

Objective-C

@protocol MGLComputedShapeSourceDataSource <NSObject>

Swift

protocol MGLComputedShapeSourceDataSource : NSObjectProtocol

MGLMapSnapshotterDelegate

Optional methods about significant events when creating a snapshot using an MGLMapSnapshotter object.

See more

Declaration

Objective-C

@protocol MGLMapSnapshotterDelegate <NSObject>

Swift

protocol MGLMapSnapshotterDelegate : NSObjectProtocol

MGLOfflineStorageDelegate

The MGLOfflineStorageDelegate protocol defines methods that a delegate of an MGLOfflineStorage object can optionally implement to transform various types of URLs before downloading them via the internet.

See more

Declaration

Objective-C

@protocol MGLOfflineStorageDelegate <NSObject>

Swift

protocol MGLOfflineStorageDelegate : NSObjectProtocol

MGLStylable

An object whose contents are represented by an MGLStyle object that you configure.

See more

Declaration

Objective-C

@protocol MGLStylable <NSObject>

Swift

protocol MGLStylable : NSObjectProtocol
iOS SDK

SDK JS Reference

On this page