Other Protocols
The following protocols are available globally.
-
Protocols that provide no-op default method implementations can use this protocol to log a message to the console whenever an unimplemented delegate method is called.
In Swift, optional protocol methods exist only for Objective-C compatibility. However, various protocols in this library follow a classic Objective-C delegate pattern in which the protocol would have a number of optional methods. Instead of the disallowed
optional
keyword, these protocols conform to theUnimplementedLogging
protocol to inform about unimplemented methods at runtime. These console messages are logged to the subsystemcom.mapbox.com
with a category of the format “delegation.ProtocolName”, where ProtocolName is the name of the protocol that defines the method.The default method implementations should be provided as part of the protocol or an extension thereof. If the default implementations reside in an extension, the extension should have the same visibility level as the protocol itself.
See moreDeclaration
Swift
public protocol UnimplementedLogging
-
A cache consists of both in-memory and on-disk components, both of which can be reset.
Declaration
Swift
@objc(MBBimodalCache) public protocol BimodalCache
-
A cache which supports storing images
Declaration
Swift
public protocol BimodalImageCache : BimodalCache
-
A cache which supports storing data
Declaration
Swift
public protocol BimodalDataCache : BimodalCache
-
The
See moreFeedbackViewControllerDelegate
protocol provides methods for responding to feedback events.Declaration
Swift
public protocol FeedbackViewControllerDelegate : AnyObject, UnimplementedLogging
-
The
See moreVisualInstructionDelegate
protocol defines a method that allows an object to customize presented visual instructions.Declaration
Swift
public protocol VisualInstructionDelegate : AnyObject, UnimplementedLogging
-
See moreInstructionsBannerViewDelegate
provides methods for reacting to user interactions inInstructionsBannerView
.Declaration
Swift
public protocol InstructionsBannerViewDelegate : AnyObject, UnimplementedLogging
-
The NavigationInteractionDelegate protocol is used to define interaction events that the top banner may need to know about.
See moreDeclaration
Swift
public protocol NavigationMapInteractionObserver : AnyObject
-
This protocol defines a UI Component that is capable of presenting a status message.
See moreDeclaration
Swift
public protocol NavigationStatusPresenter : AnyObject
-
The
See moreNavigationMapViewCourseTrackingDelegate
provides methods for responding to theNavigationMapView
starting or stopping course tracking.Declaration
Swift
public protocol NavigationMapViewCourseTrackingDelegate : AnyObject, UnimplementedLogging
-
A protocol for listening in on changes made to a
See moreStatusView
.Declaration
Swift
@available(*, deprecated, message: "Add a target to StatusView for UIControl.Event.valueChanged instead.") public protocol StatusViewDelegate : DeprecatedStatusViewDelegate
-
See moreStepsViewControllerDelegate
provides methods for user interactions in aStepsViewController
.Declaration
Swift
public protocol StepsViewControllerDelegate : AnyObject