Расположение выставки по умолчанию Mapview - PullRequest
1 голос
/ 31 января 2020

У меня есть простая экспо-карта, подобная этой:

<MapView
    loadingEnabled
    ref = {c => (this.mapView = c)}
    style={ styles.mapStyle }
>
    {jobsToArray.map(function(item, i){
        return <MapView.Marker
            key={i}
            coordinate={item}
        >
        </MapView.Marker>
    })}
    <MapViewDirections
        mode="DRIVING"
        optimizeWaypoints={true} //Make sure route is the fatest possible
        origin={this.state.myLocation.coords} //Start location = current location
        waypoints={jobsToArray} //Array of destinations to visit
        destination={jobsToArray[jobsToArray.length-1]} //Final destination
        onReady={result => {
            //Show entire map of waypoints with some padding
            this.mapView.fitToCoordinates(result.coordinates, {
                edgePadding: {
                    right: width / 20,
                    bottom: height / 20,
                    left: width / 20,
                    top: height / 3
                }, animated: true }
            );
        }}
        onError={errorMessage => {
            // console.log('GOT AN ERROR');
        }}
    />
</MapView>`

Карта анимируется, чтобы показать все местоположения, и она работает хорошо, но я просто немного раздражен, что начальное местоположение карты перед моими указаниями нагрузка - это середина Африки (хотя показывает всю страну), затем огромная анимация в пригороде Австралии. Можно ли в любом случае сказать: показать Австралию (или точное местоположение), а затем увеличить масштаб оттуда?

В идеале я хотел бы показать штат, с которым работают наши карты, а затем уменьшить масштаб оттуда. Я надеюсь, что это имеет смысл.

Спасибо

1 Ответ

0 голосов
/ 12 февраля 2020

Существует некоторый простой код для добавления к MapView

initialRegion={{ latitude: -37.112146, longitude: 144.857483, latitudeDelta: 10, longitudeDelta: 10, }}

...