React-native-maps 限制平移区域

IT技术 reactjs google-maps react-native react-native-maps
2021-05-15 21:08:04

有没有办法将地图限制在特定区域,以便平移和缩放包含在该区域内,而外面的所有内容都被锁定?我想限制用户可以在地图上看到的区域。我正在通过 react-native-maps https://github.com/react-community/react-native-maps使用谷歌地图

这是我的代码,目前对可以缩放多远或可以向任一侧平移多少没有限制

    <View style={styles.container}>
        <MapView style={styles.map}
          provider= { PROVIDER_GOOGLE }
          customMapStyle={mapStyle}
          initialRegion={{
            latitude: 59.2937025,
            longitude: 18.0813377,
            latitudeDelta: 0.012,
            longitudeDelta: 0.012,

          }}
        />
    </View> 
1个回答

TyBourque 提交的解决方案奏效了。更复杂的 anwser,您可以使用 maxZoomLevel props来限制缩放。然后您将需要使用 onPanDrag 事件并需要检查 {坐标:LatLng,位置:点} 是否在边界内,如果不在边界内,则将其重置为之前的有效位置。