花了很长时间尝试这样做:Mapbox在这里展示了如何做,但是我不确定它在React Native中是如何工作的: https://docs.mapbox.com/mapbox-gl-js/example/center-on-symbol/
我正在使用ShapeSource和SymboLayer,从geoJson获取我的标记。我似乎无法针对特定图标及其坐标。我已经尝试过类似的操作,但是它只是到第一个功能位置(而不是单击的特定图标的位置):
onPress = {()=> {this._map.flyTo(featureCollection.features.geometry(0).coordinates,1000);}}
我的功能如下:
{ “ type”:“ FeatureCollection”, “特征”: [ { “ type”:“功能”, “ id”:1 “属性”:{ “名称”:“酒店”, “ icon”:“睡觉” }, “几何”:{ “ type”:“ Point”, “坐标”:[ 12.584664, 55.680532 ] } }, { “ type”:“功能”, “ id”:2 “属性”:{ “名称”:“餐厅”, “ icon”:“食物” }, “几何”:{ “ type”:“ Point”, “坐标”:[ 12.585264, 55.683441 ] } } }
谢谢!
答案 0 :(得分:2)
我想我已经找到了一个可行的答案,但是如果您有更好的答案,请纠正我:
constructor(props) {
super(props);
this.onPress = this.onPress.bind(this);
}
async onPress(e) {
const feature = e.nativeEvent.payload;
this.map.flyTo(feature.geometry.coordinates, 1000);