Optional cachefalse
iOS: Apple maps only
Android: Supported
Optional camera?: CameraThe camera view the map should display.
Use the camera system, instead of the region system, if you need control over
the pitch or heading. Using this will ignore the region property.
iOS: Supported
Android: Supported
Optional cameraMap camera distance limits. minCenterCoordinateDistance for minimum distance, maxCenterCoordinateDistance for maximum.
animated for animated zoom changes.
Takes precedence if conflicting with minZoomLevel, maxZoomLevel.
iOS: 13.0+
Android: Not supported
Optional compassIf set, changes the position of the compass.
iOS: Apple Maps only
Android: Not supported
Optional customAdds custom styling to the map component. See README for more information.
iOS: Google Maps only
Android: Supported
Optional followsIf true the map will focus on the user's location.
This only works if showsUserLocation is true and the user has shared their location.
false
iOS: Apple Maps only
Android: Not supported
Optional googlehttps://developers.google.com/maps/documentation/get-map-id google cloud mapId to enable cloud styling and more
Optional googlehttps://developers.google.com/maps/documentation/android-sdk/renderer google maps renderer
LATEST
iOS: Not supported
Android: Supported
Optional initialThe initial camera view the map should use. Use this prop instead of camera
only if you don't want to control the camera of the map besides the initial view.
Use the camera system, instead of the region system, if you need control over the pitch or heading.
Changing this prop after the component has mounted will not result in a camera change.
This is similar to the initialValue prop of a text input.
iOS: Supported
Android: Supported
Optional initialThe initial region to be displayed by the map. Use this prop instead of region
only if you don't want to control the viewport of the map besides the initial region.
Changing this prop after the component has mounted will not result in a region change.
This is similar to the initialValue prop of a text input.
iOS: Supported
Android: Supported
Optional kmlThe URL for KML file.
iOS: Google Maps only
Android: Supported
Optional legalIf set, changes the position of the "Legal" label link in Apple maps.
iOS: Apple Maps only
Android: Not supported
Optional liteEnables lite mode on Android
iOS: Not supported
Android: Supported
Optional loadingSets loading background color.
#FFFFFF
iOS: Apple Maps only
Android: Supported
Optional loadingIf true a loading indicator will show while the map is loading.
false
iOS: Apple Maps only
Android: Supported
Optional loadingSets loading indicator color.
#606060
iOS: Apple Maps only
Android: Supported
Optional mapAdds custom padding to each side of the map. Useful when map elements/markers are obscured.
iOS: Supported
Android: Supported
Optional mapThe map type to be displayed
standard
iOS: hybrid | mutedStandard | satellite | standard | terrain | hybridFlyover | satelliteFlyover
Android: hybrid | none | satellite | standard | terrain
Optional maxTODO: Add documentation
iOS: Apple Maps only
Android: Not supported
Optional maxMaximum zoom value for the map, must be between 0 and 20
20
iOS: Supported
Android: Supported
on Apple Maps, use cameraZoomRange instead
Optional minTODO: Add documentation
iOS: Apple Maps only
Android: Not supported
Optional minMinimum zoom value for the map, must be between 0 and 20
0
iOS: Supported
Android: Supported
on Apple Maps, use cameraZoomRange instead
Optional moveIf false the map won't move to the marker when pressed.
true
iOS: Not supported
Android: Supported
Optional onCallback that is called when a callout is tapped by the user.
iOS: Apple Maps only
Android: Supported
Optional onCallback that is called when user double taps on the map.
iOS: Apple Maps only
Android: Supported
Optional onCallback that is called when an indoor building is focused/unfocused
iOS: Google Maps only
Android: Supported
Optional onCallback that is called when a level on indoor building is activated
iOS: Google Maps only
Android: Supported
Optional onCallback that is called once the kml is fully loaded.
iOS: Google Maps only
Android: Supported
Optional onCallback that is called when user makes a "long press" somewhere on the map.
iOS: Supported
Android: Supported
Optional onCallback that is called when the map has finished rendering all tiles.
iOS: Google Maps only
Android: Supported
Optional onCallback that is called once the map is ready.
Event is optional, as the first onMapReady callback is intercepted on Android, and the event is not passed on.
iOS: Supported
Android: Supported
Optional event: NativeSyntheticEvent<{}>Optional onCallback that is called when a marker on the map becomes deselected. This will be called when the callout for that marker is about to be hidden.
iOS: Supported
Android: Supported
Optional onCallback called continuously as a marker is dragged
iOS: Apple Maps only
Android: Supported
Optional onCallback that is called when a drag on a marker finishes. This is usually the point you will want to setState on the marker's coordinate again
iOS: Apple Maps only
Android: Supported
Optional onCallback that is called when the user initiates a drag on a marker (if it is draggable)
iOS: Apple Maps only
Android: Supported
Optional onCallback that is called when a marker on the map is tapped by the user.
iOS: Supported
Android: Supported
Optional onCallback that is called when a marker on the map becomes selected. This will be called when the callout for that marker is about to be shown.
iOS: Supported.
Android: Supported
Optional onCallback that is called when user presses and drags the map.
NOTE: for iOS scrollEnabled should be set to false to trigger the event
iOS: Supported
Android: Supported
Optional onCallback that is called when user click on a POI.
iOS: Google Maps only
Android: Supported
Optional onCallback that is called when user taps on the map.
iOS: Supported
Android: Supported
Optional onCallback that is called continuously when the region changes, such as when a user is dragging the map.
isGesture property indicates if the move was from the user (true) or an animation (false).
Note: isGesture is supported by Google Maps only.
iOS: Supported
Android: Supported
Optional onCallback that is called once when the region changes, such as when the user is done moving the map.
isGesture property indicates if the move was from the user (true) or an animation (false).
Note: isGesture is supported by Google Maps only.
iOS: Supported
Android: Supported
Optional onCallback that is called when the underlying map figures our users current location (coordinate also includes isFromMockProvider value for Android API 18 and above). Make sure showsUserLocation is set to true.
iOS: Supported
Android: Supported
Optional paddingIndicates how/when to affect padding with safe area insets
iOS: Google Maps only
Android: Not supported
Optional pitchIf false the user won't be able to adjust the camera’s pitch angle.
true
iOS: Google Maps only
Android: Supported
Optional provider?: ProviderThe map framework to use.
Either "google" for GoogleMaps, otherwise undefined to use the native map framework (MapKit in iOS and GoogleMaps in android).
iOS: Supported
Android: Supported
Optional region?: Region | defaultThe region to be displayed by the map. The region is defined by the center coordinates and the span of coordinates to display.
iOS: Supported
Android: Supported
Optional rotateIf false the user won't be able to adjust the camera’s pitch angle.
true
iOS: Google Maps only
Android: Supported
Optional scrollIf false the map will stay centered while rotating or zooming.
true
iOS: Google Maps only
Android: Supported
Optional scrollIf false the user won't be able to change the map region being displayed.
true
iOS: Supported
Android: Supported
Optional showsA Boolean indicating whether the map displays extruded building information.
true
iOS: Not supported
Android: Supported
Optional showsIf false compass won't be displayed on the map.
true
iOS: Supported
Android: Supported
Optional showsA Boolean indicating whether indoor level picker should be enabled.
false
iOS: Google Maps only
Android: Supported
Optional showsA Boolean indicating whether indoor maps should be enabled.
true
iOS: Google Maps only
Android: Supported
Optional showsIf false hide the button to move map to the current user's location.
true
iOS: Google Maps only
Android: Supported
Optional showsIf false points of interest won't be displayed on the map.
TODO: DEPRECATED? Doesn't seem to do anything
true
iOS: Maybe Apple Maps?
Android: Not supported
Optional showsA Boolean indicating whether the map shows scale information.
true
iOS: Apple Maps only
Android: Not supported
Optional showsA Boolean value indicating whether the map displays traffic information. TODO: Look into android support
false
iOS: Supported
Android: Not supported?
Optional showsIf true the users location will be displayed on the map.
This will cause iOS to ask for location permissions. For iOS see: DOCS
false
iOS: Supported
Android: Supported
Optional tintSets the tint color of the map. (Changes the color of the position indicator)
System Blue
iOS: Apple Maps only
Android: Not supported
Optional toolbarIf false will hide 'Navigate' and 'Open in Maps' buttons on marker press
true
iOS: Not supported
Android: Supported
Optional userSets the map to the style selected.
System setting
iOS: Apple Maps only (iOS >= 13.0)
Android: Not supported
Optional userThe title of the annotation for current user location.
This only works if showsUserLocation is true.
My Location
iOS: Apple Maps only
Android: Not supported
Optional userIf true clicking user location will show the default callout for userLocation annotation.
false
iOS: Apple Maps only
Android: Not supported
Optional userFastest interval the application will actively acquire locations.
5000
iOS: Not supported
Android: Supported
Optional userSet power priority of user location tracking.
high
iOS: Not supported
Android: Supported
Optional userInterval of user location updates in milliseconds.
5000
iOS: Not supported
Android: Supported
Optional zoomIf false the zoom control at the bottom right of the map won't be visible.
true
iOS: Not supported
Android: Supported
Optional zoomIf false the user won't be able to pinch/zoom the map.
TODO: Why is the Android reactprop defaultvalue set to false?
true
iOS: Supported
Android: Supported
Optional zoomIf false the user won't be able to double tap to zoom the map.
Note: But it will greatly decrease delay of tap gesture recognition.
true
iOS: Google Maps only
Android: Not supported
If
truemap will be cached and displayed as an image instead of being interactable, for performance usage.