我有一个地图,其中一个图钉位于地图的中心。当我拖动地图时,坐标会更新,但问题是这会在移动过程的每一步触发。
相反,我希望它能够检测到地图移动何时停止然后返回地址。
我一直在尝试使用onDragStart
/ onDragEnd
,但到目前为止还没有奏效。
<MapView
style={{ alignSelf: 'stretch', height: 250 }}
region={this.state.mapRegion}
onRegionChange={this._handleMapRegionChange}
draggable
onSelect={() => console.log('onSelect', arguments)}
onDrag={() => console.log('onDrag', arguments)}
onDragStart={() => console.log('onDragStart', arguments)}
>
<MapView.Marker
coordinate={
this.state.mapRegion
}
/>
</MapView>
我已尝试将拖动操作放在MapView.Marker组件上,但控制台日志不会触发任何一种方式。
是否有“最佳实践”方法?我正在进行谷歌地图API调用以对地址进行地理编码,我不希望它触发位置更改的每一步。
你可以使用onRegionChangeComplete
的回调道具doc MapView events