我在两个不同的坐标找到两个标记。
人们通常如何将两个标记居中,以便您可以在Map上同时看到两个标记,而不管它们有多远。
<MapView
ref={ (map)=> this.map = map}
initialRegion={this.state.init}
style={css.map}>
{ this.state.marker1 !==0 && <MapView.Marker
coordinate={{
'latitude':this.state.marker1.lat,
'longitude':this.state.marker1.lng}}
/>}
{ this.state.marker2 !==0 && <MapView.Marker
coordinate={{
'latitude':this.state.marker2.lat,
'longitude':this.state.marker2.lng}}
/>}
</MapView>
3条答案
按热度按时间fhity93d1#
可以使用
MapView
的fitToSuppliedMarkers
或fitToCoordinates
方法。https://github.com/react-native-community/react-native-maps/blob/master/docs/mapview.mdpiah890a2#
对于像我这样遇到这个问题的人来说,你需要的是来自MapView的
fitToSuppliedMarkers
和来自Marker的identifiers
。https://github.com/react-native-maps/react-native-maps/blob/master/example/src/examples/FitToSuppliedMarkers.tsxyzxexxkh3#
如果您需要在ComponentDidMount中使用此功能,请确保将其设置为超时,否则将导致性能问题。注意edgePadding仅适用于Google Maps https://github.com/react-native-maps/react-native-maps/blob/master/docs/mapview.md