Options

To dictate what the map can/should do, regardless of its contents, it needs some guidance!

It provides options that can be categorized into three main parts:

Initial Positioning

One part of MapOptions responsibilities is to define how the map should be positioned when first loaded. There's two ways to do this (that are incompatible):

  • center & zoom Defines the center coordinates of the map and a zoom level

  • bounds Defines an area with two/four coordinates that the viewport should fit to

It is possible to also set the map's rotation in degrees, if you don't want it North (0°) facing initially.

Changing these properties after the map has already been built for the first time will have no effect: they only apply on initialisation.

To control the map programatically, use a MapController: Controller.

Permanent Rules

One part of MapOptions responsibilities is to define the restrictions and limitations of the map and what users can/cannot do with it.

You should check all the available options, but these are recommended for most maps:

  • maxZoom (and minZoom) Limits how far the map can be zoomed by the user, to avoid showing empty tiles

  • maxBounds Limits how far the map can be moved by the user to a coordinate-based boundary

  • interactiveFlags - see InteractiveFlag for available options Limits what methods the user can interact with the map through (for example, preventing rotation)

  • keepAlive If FlutterMap is located inside a PageView, ListView or another complex lazy layout, set this true to prevent the map from resetting to the Initial Positioning on rebuild

Event Handling

Event Handling

Last updated

Was this helpful?