Ich integrierte Google Map für iOS-Gerät mit react-native-maps
. Ich habe ein Problem, dass initialRegion
nicht funktioniert, nachdem ich die Karte neu gerendert habe.reagieren nativ - react-native-maps initialRegion funktioniert nicht
Meine Anwendung enthält nur 2 Komponenten: 10 von react-native-maps
und Button
. Klicken Sie auf die Schaltfläche, um die Karte ein- oder auszublenden.
Hier ist mein Code:
render() {
return (
<View style={styles.mapContainer}>
{this.renderMap()}
<TouchableOpacity
onPress={this.onButtonPress.bind(this)}
style={styles.showMapButtonContainer}>
<Text style={styles.showMapButtonText}>Show and Hide Map</Text>
</TouchableOpacity>
</View>
);
}
renderMap() {
if (this.state.showMap) {
return (
<MapView
provider={PROVIDER_GOOGLE}
style={styles.map}
initialRegion={{
latitude: 37.78825,
longitude: -122.4324,
latitudeDelta: LATITUDE_DELTA,
longitudeDelta: LONGITUDE_DELTA,
}}
cacheEnabled={true}
onRegionChangeComplete={this.onRegionChangeComplete.bind(this)}
>
</MapView>
);
} else {
return <View style={styles.map}/>;
}
}
onButtonPress() {
this.setState({
showMap: !this.state.showMap,
})
}
onRegionChangeComplete(region) {
console.log("new region", region)
}
Zum ersten Mal laden Karte, alles perfekt funktionieren. Allerdings, wenn ich die Karte und zeigen Sie es erneut, indem Sie auf den Button verbergen machen es eine zufällige Region:
{
longitude: 0,
latitudeDelta: 0.0004935264587338631,
latitude: 0,
longitudeDelta: 0.00027760863304138184
}
Ich versuchte cacheEnabled
gleich true
und false
aber keine Hilfe. Bitte lassen Sie mich wissen, wenn Sie einen Vorschlag haben. Vielen Dank im Voraus!
wenn die Antwort Ihnen helfen konnte? –