Listen To Events
To cause a widget inside FlutterMap
's context to rebuild when an aspect changes, see 2. Hooking Into Inherited State.
When the state of a MapCamera
changes, because of an update to its position or zoom, for example, a MapEvent
, which can be handled by you.
Catching All Events
There's two methods to catch all emitted MapEvent
s. These methods expose the raw MapEvent
, and is recommended in cases where multiple events need to be caught, or there's no more specific callback method available in MapOptions
(see Catching Specific Events).
Listening to a
MapController
'smapEventStream
, which exposes events via aStream
Specifying a callback method in
MapOptions.onMapEvent
Catching Specific Events
If only a couple of events need to be caught, such as just an onTap
handler, it is possible to avoid handling the raw Stream
of MapEvent
s. Instead, MapOptions
has callbacks available for the following events:
onTap
onLongPress
onPositionChanged
onPointerDown
/onPointerUp
/onPointerHover
/onPointerCancel
onMapReady
Primarily used for advancedMapController
#usage-inside-initstate
The MapEventTap
event may be emitted (or the onTap
callback called) 250ms after the actual tap occurred, as this is the acceptable delay between the two taps in a double tap zoom gesture.
If this causes noticeable jank or a bad experience (for example, on desktop platforms), disable InteractiveFlag
.doubleTapZoom
:
This disables the double tap handler, so the MapEventTap
is emitted 'instantly' on tap.
Last updated