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
true
map will be cached and displayed as an image instead of being interactable, for performance usage.