NavigationMapViewDelegate
public protocol NavigationMapViewDelegate : AnyObject, UnimplementedLogging
The NavigationMapViewDelegate
provides methods for configuring the NavigationMapView
, as well as responding to events triggered by the NavigationMapView
.
-
navigationMapView(_:routeLineLayerWithIdentifier:sourceIdentifier:)
Default implementationAsks the receiver to return a
LineLayer
for the route line, given a layer identifier and a source identifier. This method is invoked when the map view loads and any time routes are added.Default Implementation
UnimplementedLogging
prints a warning to standard output the first time this method is called.Declaration
Swift
func navigationMapView(_ navigationMapView: NavigationMapView, routeLineLayerWithIdentifier identifier: String, sourceIdentifier: String) -> LineLayer?
Parameters
navigationMapView
The
NavigationMapView
object.identifier
The
LineLayer
identifier.sourceIdentifier
Identifier of the source, which contains the route data that this method would style.
Return Value
A
LineLayer
that is applied to the route line. -
navigationMapView(_:routeCasingLineLayerWithIdentifier:sourceIdentifier:)
Default implementationAsks the receiver to return a
LineLayer
for the casing layer that surrounds route line, given a layer identifier and a source identifier. This method is invoked when the map view loads and any time routes are added.Default Implementation
UnimplementedLogging
prints a warning to standard output the first time this method is called.Declaration
Swift
func navigationMapView(_ navigationMapView: NavigationMapView, routeCasingLineLayerWithIdentifier identifier: String, sourceIdentifier: String) -> LineLayer?
Parameters
navigationMapView
The
NavigationMapView
object.identifier
The
LineLayer
identifier.sourceIdentifier
Identifier of the source, which contains the route data that this method would style.
Return Value
A
LineLayer
that is applied as a casing around the route line. -
navigationMapView(_:shapeFor:)
Default implementationAsks the receiver to return an
LineString
that describes the geometry of the route. ResultingLineString
will then be styled usingNavigationMapView.navigationMapView(_:routeLineLayerWithIdentifier:sourceIdentifier:)
provided style or a default congestion style if above delegate method was not implemented.Default Implementation
UnimplementedLogging
prints a warning to standard output the first time this method is called.Declaration
Swift
func navigationMapView(_ navigationMapView: NavigationMapView, shapeFor route: Route) -> LineString?
Parameters
navigationMapView
The
NavigationMapView
.route
The route that the sender is asking about.
Return Value
A
LineString
object that defines the shape of the route, ornil
in case of default behavior. -
navigationMapView(_:casingShapeFor:)
Default implementationAsks the receiver to return an
LineString
that describes the geometry of the route casing. ResultingLineString
will then be styled usingNavigationMapView.navigationMapView(_:routeCasingLineLayerWithIdentifier:sourceIdentifier:)
provided style or a default style if above delegate method was not implemented.Default Implementation
UnimplementedLogging
prints a warning to standard output the first time this method is called.Declaration
Swift
func navigationMapView(_ navigationMapView: NavigationMapView, casingShapeFor route: Route) -> LineString?
Parameters
navigationMapView
The
NavigationMapView
.route
The route that the sender is asking about.
Return Value
A
LineString
object that defines the shape of the route casing, ornil
in case of default behavior.
-
navigationMapView(_:waypointCircleLayerWithIdentifier:sourceIdentifier:)
Default implementationAsks the receiver to return a
CircleLayer
for waypoints, given an identifier and source. This method is invoked any time waypoints are added or shown.Default Implementation
UnimplementedLogging
prints a warning to standard output the first time this method is called.Declaration
Swift
func navigationMapView(_ navigationMapView: NavigationMapView, waypointCircleLayerWithIdentifier identifier: String, sourceIdentifier: String) -> CircleLayer?
Parameters
navigationMapView
The
NavigationMapView
object.identifier
The
CircleLayer
identifier.sourceIdentifier
Identifier of the source, which contains the waypoint data that this method would style.
Return Value
A
CircleLayer
that the map applies to all waypoints. -
navigationMapView(_:waypointSymbolLayerWithIdentifier:sourceIdentifier:)
Default implementationAsks the receiver to return a
SymbolLayer
for waypoint symbols, given an identifier and source. This method is invoked any time waypoints are added or shown.Default Implementation
UnimplementedLogging
prints a warning to standard output the first time this method is called.Declaration
Swift
func navigationMapView(_ navigationMapView: NavigationMapView, waypointSymbolLayerWithIdentifier identifier: String, sourceIdentifier: String) -> SymbolLayer?
Parameters
navigationMapView
The
NavigationMapView
object.identifier
The
SymbolLayer
identifier.sourceIdentifier
Identifier of the source, which contains the waypoint data that this method would style.
Return Value
A
SymbolLayer
that the map applies to all waypoint symbols. -
navigationMapView(_:shapeFor:legIndex:)
Default implementationAsks the receiver to return a
FeatureCollection
that describes the geometry of the waypoint.Default Implementation
UnimplementedLogging
prints a warning to standard output the first time this method is called.Declaration
Swift
func navigationMapView(_ navigationMapView: NavigationMapView, shapeFor waypoints: [Waypoint], legIndex: Int) -> FeatureCollection?
Parameters
navigationMapView
The
NavigationMapView
.waypoints
The waypoints to be displayed on the map.
legIndex
Index, which determines for which
RouteLeg
Waypoint
will be shown.Return Value
Optionally, a
FeatureCollection
that defines the shape of the waypoint, ornil
to use default behavior.
-
navigationMapView(_:didSelect:)
Default implementationTells the receiver that the user has selected a route by interacting with the map view.
Default Implementation
UnimplementedLogging
prints a warning to standard output the first time this method is called.Declaration
Swift
func navigationMapView(_ navigationMapView: NavigationMapView, didSelect route: Route)
Parameters
navigationMapView
The
NavigationMapView
.route
The route that was selected.
-
Tells the receiver that a waypoint was selected.
Declaration
Swift
func navigationMapView(_ navigationMapView: NavigationMapView, didSelect waypoint: Waypoint)
Parameters
navigationMapView
The
NavigationMapView
.waypoint
The waypoint that was selected.
-
navigationMapView(_:didAdd:pointAnnotationManager:)
Default implementationTells the receiver that the final destination
PointAnnotation
was added to theNavigationMapView
.Default Implementation
UnimplementedLogging
prints a warning to standard output the first time this method is called.Declaration
Swift
func navigationMapView(_ navigationMapView: NavigationMapView, didAdd finalDestinationAnnotation: PointAnnotation, pointAnnotationManager: PointAnnotationManager)
Parameters
navigationMapView
The
NavigationMapView
object.finalDestinationAnnotation
The point annotation that was added to the map view.
pointAnnotationManager
The object that manages the point annotation in the map view.