Чтобы убедиться, что пользователь перетащил карту за пределы, вы можете проверить текущие значения lat и lng.Если текущие значения lat и lng вышли за границы, верните пользователя к последним действительным значениям lat и lng.Смотрите код ниже: -
let lastValidCenter
constructor(props) {
super(props)
this.state = {
region: {
latitude: 37.78825,
longitude: -122.4324,
latitudeDelta: 0.0922,
longitudeDelta: 0.0421,
}
}
lastValidCenter = this.state.region
}
onRegionChange = (region) => {
if(this.state.region.contains(region)) {
lastValidCenter = region;
return;
}
this.setState({
region: lastValidCenter
})
}
<MapView
region={this.state.region}
onRegionChange={this.onRegionChange}
>
</MapView>
Счастливое кодирование:)