我成功地将@react-native-mapbox-gl/maps添加到我的项目中。 现在我不需要用户的当前位置,但我只需要获取用户点击地图的位置的坐标(纬度和液化天然气(。我已经尝试了一切,但没有任何效果! 我的代码:
import MapboxGL, {MapView, UserLocation} from '@react-native-mapbox-gl/maps';
MapboxGL.setAccessToken(
'MyAccessToken', );
export default class .... .... {
getLastLocation(location) {
ToastMaker(location, 'short')
}
render() {
return (
<View style={{flex: 1}}>
<View style={{height: '100%',
width: '100%',
backgroundColor: 'blue'}}>
<MapView style={{ flex: 1}}
//These Don't Work!
//onUserLocationUpdate={(property) => this.getLastLocation(property)}
//onLongPress={(property) => this.getLastLocation(property[0].coordinates)}
//onLongPress={(property) => this.getLastLocation(property.geometry) }
//onLongPress={(property) => ToastMaker(property.properties.screenPointY,'short') }
>
<MapboxGL.PointAnnotation
draggable={true}
id={'1'}
selected={true}
coordinate={this.state.coordinates}
/>
</MapView>
</View>
</View>
)
}
}
*我所需要的只是用户在地图上选择的位置的坐标谢谢*
使用MapView#onPress
属性。
<MapView
...
onPress={(feature)=>console.log('Coords:', feature.geometry.coordinates)}
>
...
</MapView>
有关完整示例.js请参见 ShowPointAnnotation
已编辑:修复了函数中的变量错误"功能">