小编Wil*_*iam的帖子

React Native Maps 加载位置

我正在尝试使用 react-native-maps 模块制作一个应用程序。我可以通过 navigator.geolocation.watchPosition 获取设备位置,并且我还使用内置于 showUserLocation 属性的地图。我怎样才能实现加载时地图会转到用户位置。没有看到整个世界,也没有硬编码的初始位置。

编辑:这是我的 react-native-map 元素。该区域设置为硬编码的初始位置,我想将其更改为始终加载到用户位置。

    <View style={styles.container}>
                    <MapView
                    style={styles.map}
                    region={this.state.initialPosition}
                    showsMyLocationButton={true}
                    loadingEnabled={true}
                    onRegionChange={(region)=> this.setState({ initialPosition:region })}
                    onLongPress={this.mapOnPress}
                    showsUserLocation={true}
                    > 
Run Code Online (Sandbox Code Playgroud)

我在应用程序中使用的位置来自这里,但加载很晚,通常超过 20 秒,所以我想跳过这 20 秒并立即加载用户位置。

this.watchID= navigator.geolocation.watchPosition((position)=>{
    var lastRegion ={
                latitude: lat,
                longitude: lon,
                longitudeDelta: LON_D,
                latitudeDelta: LAT_D
            }
    this.setState({initialPosition:lastRegion})},(error)=>alert(error),{enableHighAccuracy:true,timeout:20,maximumAge:10})
Run Code Online (Sandbox Code Playgroud)

有什么解决办法吗?谢谢你的帮助 :)

maps android location react-native react-native-maps

6
推荐指数
1
解决办法
2546
查看次数