NavigationViewControllerDelegate
public protocol NavigationViewControllerDelegate
                The NavigationViewControllerDelegate provides methods for configuring the map view shown by a NavigationViewController and responding to the cancellation of a navigation session.
- 
                  
                  
Called when the user exits a route and dismisses the navigation view controller by tapping the Cancel button.
Declaration
Swift
@objc optional func navigationViewControllerDidCancelNavigation(_ navigationViewController : NavigationViewController) - 
                  
                  
Called when the user arrives at the destination.
Declaration
Swift
@objc optional func navigationViewController(_ navigationViewController : NavigationViewController, didArriveAt waypoint: Waypoint) - 
                  
                  
Returns whether the navigation view controller should be allowed to calculate a new route.
If implemented, this method is called as soon as the navigation view controller detects that the user is off the predetermined route. Implement this method to conditionally prevent rerouting. If this method returns
true,navigationViewController(_:willRerouteFrom:)will be called immediately afterwards.Declaration
Swift
optional func navigationViewController(_ navigationViewController: NavigationViewController, shouldRerouteFrom location: CLLocation) -> BoolParameters
navigationViewControllerThe navigation view controller that has detected the need to calculate a new route.
locationThe user’s current location.
Return Value
True to allow the navigation view controller to calculate a new route; false to keep tracking the current route.
 - 
                  
                  
Called immediately before the navigation view controller calculates a new route.
This method is called after
navigationViewController(_:shouldRerouteFrom:)is called, simultaneously with theRouteControllerWillReroutenotification being posted, and beforenavigationViewController(_:didRerouteAlong:)is called.Declaration
Swift
optional func navigationViewController(_ navigationViewController: NavigationViewController, willRerouteFrom location: CLLocation)Parameters
navigationViewControllerThe navigation view controller that will calculate a new route.
locationThe user’s current location.
 - 
                  
                  
Called immediately after the navigation view controller receives a new route.
This method is called after
navigationViewController(_:willRerouteFrom:)and simultaneously with theRouteControllerDidReroutenotification being posted.Declaration
Swift
optional func navigationViewController(_ navigationViewController: NavigationViewController, didRerouteAlong route: Route)Parameters
navigationViewControllerThe navigation view controller that has calculated a new route.
routeThe new route.
 - 
                  
                  
Called when the navigation view controller fails to receive a new route.
This method is called after
navigationViewController(_:willRerouteFrom:)and simultaneously with theRouteControllerDidFailToReroutenotification being posted.Declaration
Swift
optional func navigationViewController(_ navigationViewController: NavigationViewController, didFailToRerouteWith error: Error)Parameters
navigationViewControllerThe navigation view controller that has calculated a new route.
errorAn error raised during the process of obtaining a new route.
 - 
                  
                  
Returns an
MGLStyleLayerthat determines the appearance of the route line.If this method is unimplemented, the navigation map view draws the route line using an
MGLLineStyleLayer.Declaration
Swift
@objc optional func navigationMapView(_ mapView: NavigationMapView, routeStyleLayerWithIdentifier identifier: String, source: MGLSource) -> MGLStyleLayer? - 
                  
                  
Returns an
MGLStyleLayerthat determines the appearance of the route line’s casing.If this method is unimplemented, the navigation map view draws the route line’s casing using an
MGLLineStyleLayerwhose width is greater than that of the style layer returned bynavigationMapView(_:routeStyleLayerWithIdentifier:source:).Declaration
Swift
@objc optional func navigationMapView(_ mapView: NavigationMapView, routeCasingStyleLayerWithIdentifier identifier: String, source: MGLSource) -> MGLStyleLayer? - 
                  
                  
Returns an
MGLShapethat represents the path of the route line.If this method is unimplemented, the navigation map view represents the route line using an
MGLPolylineFeaturebased onroute’scoordinatesproperty.Declaration
Swift
@objc optional func navigationMapView(_ mapView: NavigationMapView, shapeDescribing route: Route) -> MGLShape? - 
                  
                  
Returns an
MGLShapethat represents the path of the route line’s casing.If this method is unimplemented, the navigation map view represents the route line’s casing using an
MGLPolylineFeatureidentical to the one returned bynavigationMapView(_:shapeDescribing:).Declaration
Swift
@objc optional func navigationMapView(_ mapView: NavigationMapView, simplifiedShapeDescribing route: Route) -> MGLShape? - 
                  
                  
Returns an
MGLShapethat represents the destination waypoints along the route (that is, excluding the origin).If this method is unimplemented, the navigation map view represents the route waypoints using
navigationMapView(_:shapeFor:).Declaration
Swift
@objc optional func navigationMapView(_ mapView: NavigationMapView, shapeFor waypoints: [Waypoint]) -> MGLShape? - 
                  
                  
Return an
MGLAnnotationImagethat represents the destination marker.If this method is unimplemented, the navigation map view will represent the destination annotation with the default marker.
Declaration
Swift
@objc optional func navigationMapView(_ mapView: MGLMapView, imageFor annotation: MGLAnnotation) -> MGLAnnotationImage? - 
                  
                  
Returns a view object to mark the given point annotation object on the map.
The user location annotation view can also be customized via this method. When annotation is an instance of
MGLUserLocation, return an instance ofMGLUserLocationAnnotationView(or a subclass thereof).Declaration
Swift
@objc optional func navigationMapView(_ mapView: MGLMapView, viewFor annotation: MGLAnnotation) -> MGLAnnotationView? 
              Install in Dash
            
        NavigationViewControllerDelegate Protocol Reference