我目前正在使用mapbox
https://github.com/mapbox/react-native-mapbox-gl学习使用地图做出反应原生的做法我按照地图显示的内容进行了操作,如果我给它一个lon
和lat
它确实显示我emulator
上的某个位置,但问题是annotation
和show user location
根本没有显示。
有谁知道我可能会缺少什么? 我一直在重建应用程序几次并检查调试没有错误
这是我的简单代码
导出默认类App扩展Component { data = [ { ID: '' } ];
render() {
return (
<View style={styles.container}>
<Mapbox.MapView
showUserLocation={true}
styleURL={Mapbox.StyleURL.Street}
zoomLevel={16}
centerCoordinate={[-123.1118716, 49.2847564]}
style={styles.container}>
</Mapbox.MapView>
<Mapbox.PointAnnotation
id='1'
title='nooooooooooooooooooooo'
coordinate={[-123.1118716, 49.2847560]}
>
</Mapbox.PointAnnotation>
</View>
);
}
}
答案 0 :(得分:1)
遇到同样的问题,在Android> = 23上,您必须先请求权限
import { PermissionsAndroid } from 'react-native';
...
componentDidMount() {
{
PermissionsAndroid.requestMultiple(
[PermissionsAndroid.PERMISSIONS.ACCESS_FINE_LOCATION,
PermissionsAndroid.PERMISSIONS.ACCESS_COARSE_LOCATION],
{
title: 'Give Location Permission',
message: 'App needs location permission to find your position.'
}
).then(granted => {
console.log(granted);
resolve();
}).catch(err => {
console.warn(err);
reject(err);
});
}