MapboxMapController class

Controller for a single MapboxMap instance running on the host platform.

Change listeners are notified upon changes to any of

Listeners are notified after changes have been applied on the platform side.

Symbol tap events can be received by adding callbacks to onSymbolTapped. Line tap events can be received by adding callbacks to onLineTapped. Circle tap events can be received by adding callbacks to onCircleTapped.

Inheritance

Constructors

MapboxMapController({required MapboxGlPlatform mapboxGlPlatform, required CameraPosition initialCameraPosition, required Iterable<AnnotationType> annotationOrder, required Iterable<AnnotationType> annotationConsumeTapEvents, OnStyleLoadedCallback? onStyleLoadedCallback, OnMapClickCallback? onMapClick, OnMapLongClickCallback? onMapLongClick, OnAttributionClickCallback? onAttributionClick, OnCameraTrackingDismissedCallback? onCameraTrackingDismissed, OnCameraTrackingChangedCallback? onCameraTrackingChanged, OnMapIdleCallback? onMapIdle, OnUserLocationUpdated? onUserLocationUpdated, OnCameraIdleCallback? onCameraIdle})

Properties

cameraPosition CameraPosition?
Returns the most recent camera position reported by the platform side. Will be null, if MapboxMap.trackCameraPosition is false.
no setter
circleManager CircleManager?
getter/setter pair
circles Set<Circle>
The current set of circles on this map.
no setter
fillManager FillManager?
getter/setter pair
fills Set<Fill>
The current set of fills on this map.
no setter
hashCode int
The hash code for this object.
no setterinherited
hasListeners bool
Whether any listeners are currently registered.
no setterinherited
isCameraMoving bool
True if the map camera is currently moving.
no setter
lineManager LineManager?
getter/setter pair
lines Set<Line>
The current set of lines on this map.
no setter
onAttributionClick OnAttributionClickCallback?
final
onCameraIdle OnCameraIdleCallback?
final
onCameraTrackingChanged OnCameraTrackingChangedCallback?
final
onCameraTrackingDismissed OnCameraTrackingDismissedCallback?
final
onCircleTapped ArgumentCallbacks<Circle>
Callbacks to receive tap events for symbols placed on this map.
final
onFeatureDrag List<OnFeatureDragnCallback>
final
onFeatureTapped List<OnFeatureInteractionCallback>
Callbacks to receive tap events for features (geojson layer) placed on this map.
final
onFillTapped ArgumentCallbacks<Fill>
Callbacks to receive tap events for fills placed on this map.
final
onInfoWindowTapped ArgumentCallbacks<Symbol>
Callbacks to receive tap events for info windows on symbols
final
onLineTapped ArgumentCallbacks<Line>
Callbacks to receive tap events for lines placed on this map.
final
onMapClick OnMapClickCallback?
final
onMapIdle OnMapIdleCallback?
final
onMapLongClick OnMapLongClickCallback?
final
onStyleLoadedCallback OnStyleLoadedCallback?
final
onSymbolTapped ArgumentCallbacks<Symbol>
Callbacks to receive tap events for symbols placed on this map.
final
onUserLocationUpdated OnUserLocationUpdated?
final
runtimeType Type
A representation of the runtime type of the object.
no setterinherited
symbolManager SymbolManager?
getter/setter pair
symbols Set<Symbol>
The current set of symbols on this map.
no setter

Methods

addCircle(CircleOptions options, [Map? data]) Future<Circle>
Adds a circle to the map, configured using the specified custom options.
addCircleLayer(String sourceId, String layerId, CircleLayerProperties properties, {String? belowLayerId, String? sourceLayer, double? minzoom, double? maxzoom, dynamic filter, bool enableInteraction = true}) Future<void>
Add a circle layer to the map with the given properties
addCircles(List<CircleOptions> options, [List<Map>? data]) Future<List<Circle>>
Adds multiple circles to the map, configured using the specified custom options.
addFill(FillOptions options, [Map? data]) Future<Fill>
Adds a fill to the map, configured using the specified custom options.
addFillLayer(String sourceId, String layerId, FillLayerProperties properties, {String? belowLayerId, String? sourceLayer, double? minzoom, double? maxzoom, dynamic filter, bool enableInteraction = true}) Future<void>
Add a fill layer to the map with the given properties
addFills(List<FillOptions> options, [List<Map>? data]) Future<List<Fill>>
Adds multiple fills to the map, configured using the specified custom options.
addGeoJsonSource(String sourceId, Map<String, dynamic> geojson, {String? promoteId}) Future<void>
Adds a new geojson source
addHillshadeLayer(String sourceId, String layerId, HillshadeLayerProperties properties, {String? belowLayerId, String? sourceLayer, double? minzoom, double? maxzoom}) Future<void>
Add a hillshade layer to the map with the given properties
addImage(String name, Uint8List bytes, [bool sdf = false]) Future<void>
Adds an image to the style currently displayed in the map, so that it can later be referred to by the provided name.
addImageLayer(String layerId, String imageSourceId, {double? minzoom, double? maxzoom}) Future<void>
Adds a Mapbox image layer to the map's style at render time.
addImageLayerBelow(String layerId, String sourceId, String imageSourceId, {double? minzoom, double? maxzoom}) Future<void>
Adds a Mapbox image layer below the layer provided with belowLayerId to the map's style at render time.
addImageSource(String imageSourceId, Uint8List bytes, LatLngQuad coordinates) Future<void>
Adds an image source to the style currently displayed in the map, so that it can later be referred to by the provided id.
addLayer(String sourceId, String layerId, LayerProperties properties, {String? belowLayerId, bool enableInteraction = true, String? sourceLayer, double? minzoom, double? maxzoom, dynamic filter}) Future<void>
Add a layer to the map with the given properties
addLayerBelow(String layerId, String sourceId, String imageSourceId, {double? minzoom, double? maxzoom}) Future<void>
Adds a Mapbox image layer below the layer provided with belowLayerId to the map's style at render time. Only works for image sources!
addLine(LineOptions options, [Map? data]) Future<Line>
Adds a line to the map, configured using the specified custom options.
addLineLayer(String sourceId, String layerId, LineLayerProperties properties, {String? belowLayerId, String? sourceLayer, double? minzoom, double? maxzoom, dynamic filter, bool enableInteraction = true}) Future<void>
Add a line layer to the map with the given properties
addLines(List<LineOptions> options, [List<Map>? data]) Future<List<Line>>
Adds multiple lines to the map, configured using the specified custom options.
addListener(VoidCallback listener) → void
Register a closure to be called when the object changes.
inherited
addRasterLayer(String sourceId, String layerId, RasterLayerProperties properties, {String? belowLayerId, String? sourceLayer, double? minzoom, double? maxzoom}) Future<void>
Add a raster layer to the map with the given properties
addSource(String sourceid, SourceProperties properties) Future<void>
Add a new source to the map
addSymbol(SymbolOptions options, [Map? data]) Future<Symbol>
Adds a symbol to the map, configured using the specified custom options.
addSymbolLayer(String sourceId, String layerId, SymbolLayerProperties properties, {String? belowLayerId, String? sourceLayer, double? minzoom, double? maxzoom, dynamic filter, bool enableInteraction = true}) Future<void>
Add a symbol layer to the map with the given properties
addSymbols(List<SymbolOptions> options, [List<Map>? data]) Future<List<Symbol>>
Adds multiple symbols to the map, configured using the specified custom options.
animateCamera(CameraUpdate cameraUpdate) Future<bool?>
Starts an animated change of the map camera position.
clearCircles() Future<void>
Removes all circles from the map.
clearFills() Future<void>
Removes all fill from the map.
clearLines() Future<void>
Removes all lines from the map.
clearSymbols() Future<void>
Removes all symbols from the map.
dispose() → void
Discards any resources used by the object. After this is called, the object is not in a usable state and should be discarded (calls to addListener will throw after the object is disposed).
override
getCircleLatLng(Circle circle) Future<LatLng>
Retrieves the current position of the circle. This may be different from the value of circle.options.geometry if the circle is draggable. In that case this method provides the circle's actual position, and circle.options.geometry the last programmatically set position.
getLineLatLngs(Line line) Future<List<LatLng>>
Retrieves the current position of the line. This may be different from the value of line.options.geometry if the line is draggable. In that case this method provides the line's actual position, and line.options.geometry the last programmatically set position.
getMetersPerPixelAtLatitude(double latitude) Future<double>
Returns the distance spanned by one pixel at the specified latitude and current zoom level. The distance between pixels decreases as the latitude approaches the poles. This relationship parallels the relationship between longitudinal coordinates at different latitudes.
getSymbolLatLng(Symbol symbol) Future<LatLng>
Retrieves the current position of the symbol. This may be different from the value of symbol.options.geometry if the symbol is draggable. In that case this method provides the symbol's actual position, and symbol.options.geometry the last programmatically set position.
getTelemetryEnabled() Future<bool>
Retrieves whether collection of anonymized telemetry data is enabled.
getVisibleRegion() Future<LatLngBounds>
This method returns the boundaries of the region currently displayed in the map.
invalidateAmbientCache() Future
matchMapLanguageWithDeviceDefault() Future<void>
Updates the language of the map labels to match the device's language.
moveCamera(CameraUpdate cameraUpdate) Future<bool?>
Instantaneously re-position the camera. Note: moveCamera() quickly moves the camera, which can be visually jarring for a user. Strongly consider using the animateCamera() methods instead because it's less abrupt.
noSuchMethod(Invocation invocation) → dynamic
Invoked when a nonexistent method or property is accessed.
inherited
notifyListeners() → void
Call all the registered listeners.
inherited
queryRenderedFeatures(Point<double> point, List<String> layerIds, List<Object>? filter) Future<List>
Query rendered features at a point in screen cooridnates
queryRenderedFeaturesInRect(Rect rect, List<String> layerIds, String? filter) Future<List>
Query rendered features in a Rect in screen coordinates
removeCircle(Circle circle) Future<void>
Removes the specified circle from the map. The circle must be a current member of the circles set.
removeCircles(Iterable<Circle> circles) Future<void>
Removes the specified circles from the map. The circles must be current members of the circles set.
removeFill(Fill fill) Future<void>
Removes the specified fill from the map. The fill must be a current member of the fills set.
removeFills(Iterable<Fill> fills) Future<void>
Removes the specified fills from the map. The fills must be current members of the fills set.
removeImageSource(String imageSourceId) Future<void>
Removes previously added image source by id
removeLayer(String layerId) Future<void>
Removes a Mapbox style layer
removeLine(Line line) Future<void>
Removes the specified line from the map. The line must be a current member of the lines set.
removeLines(Iterable<Line> lines) Future<void>
Removes the specified lines from the map. The lines must be current members of the lines set.
removeListener(VoidCallback listener) → void
Remove a previously registered closure from the list of closures that are notified when the object changes.
inherited
removeSource(String sourceId) Future<void>
Removes previously added source by id
removeSymbol(Symbol symbol) Future<void>
Removes the specified symbol from the map. The symbol must be a current member of the symbols set.
removeSymbols(Iterable<Symbol> symbols) Future<void>
Removes the specified symbols from the map. The symbols must be current members of the symbols set.
requestMyLocationLatLng() Future<LatLng?>
Get last my location
setFilter(String layerId, dynamic filter) Future<void>
setGeoJsonFeature(String sourceId, Map<String, dynamic> geojsonFeature) Future<void>
Sets new geojson data to and existing source
setGeoJsonSource(String sourceId, Map<String, dynamic> geojson) Future<void>
Sets new geojson data to and existing source
setMapLanguage(String language) Future<void>
Updates the language of the map labels to match the specified language. Supported language strings are available here: https://github.com/mapbox/mapbox-plugins-android/blob/e29c18d25098eb023a831796ff807e30d8207c36/plugin-localization/src/main/java/com/mapbox/mapboxsdk/plugins/localization/MapLocale.java#L39-L87 Attention: This may only be called after onStyleLoaded() has been invoked.
setSymbolIconAllowOverlap(bool enable) Future<void>
For more information on what this does, see https://docs.mapbox.com/help/troubleshooting/optimize-map-label-placement/#label-collision
setSymbolIconIgnorePlacement(bool enable) Future<void>
For more information on what this does, see https://docs.mapbox.com/help/troubleshooting/optimize-map-label-placement/#label-collision
setSymbolTextAllowOverlap(bool enable) Future<void>
For more information on what this does, see https://docs.mapbox.com/help/troubleshooting/optimize-map-label-placement/#label-collision
setSymbolTextIgnorePlacement(bool enable) Future<void>
For more information on what this does, see https://docs.mapbox.com/help/troubleshooting/optimize-map-label-placement/#label-collision
setTelemetryEnabled(bool enabled) Future<void>
Enables or disables the collection of anonymized telemetry data.
toLatLng(Point<num> screenLocation) Future<LatLng>
Returns the geographic location (as LatLng) that corresponds to a point on the screen. The screen location is specified in screen pixels (not display pixels) relative to the top left of the map (not the top left of the whole screen).
toScreenLocation(LatLng latLng) Future<Point<num>>
Returns the point on the screen that corresponds to a geographical coordinate (latLng). The screen location is in screen pixels (not display pixels) relative to the top left of the map (not of the whole screen)
toScreenLocationBatch(Iterable<LatLng> latLngs) Future<List<Point<num>>>
toString() String
A string representation of this object.
inherited
updateCircle(Circle circle, CircleOptions changes) Future<void>
Updates the specified circle with the given changes. The circle must be a current member of the circles set.
updateContentInsets(EdgeInsets insets, [bool animated = false]) Future<void>
Updates the distance from the edges of the map view’s frame to the edges of the map view’s logical viewport, optionally animating the change.
updateFill(Fill fill, FillOptions changes) Future<void>
Updates the specified fill with the given changes. The fill must be a current member of the fills set.
updateLine(Line line, LineOptions changes) Future<void>
Updates the specified line with the given changes. The line must be a current member of the lines set.‚
updateMyLocationTrackingMode(MyLocationTrackingMode myLocationTrackingMode) Future<void>
Updates user location tracking mode.
updateSymbol(Symbol symbol, SymbolOptions changes) Future<void>
Updates the specified symbol with the given changes. The symbol must be a current member of the symbols set.

Operators

operator ==(Object other) bool
The equality operator.
inherited