我有一个场景,展示了我所在城市的一些古迹。当我按下标记(纪念碑)时,它会显示纪念碑的名称。我想要做的是,当我按下该名称时,我想转移到确定的场景(使用react-navigation)。我用TouchableHighlight包裹了纪念碑的名字,然后按下我打电话给#39;导航'方法。但它根本不过境,它什么都不做。甚至没有错误。
这是我的代码:
render(){
const { navigate } = this.props.navigation;
const { data } = this.props.navigation.state.params;
return (
<View style={styles.container}>
<MapView
style={styles.map}
initialRegion={{
latitude: 39.604419,
longitude: -8.411803,
latitudeDelta: 0.0122,
longitudeDelta: 0.0221,
}}
>
{data.map(i => {
if (i.category === "Museus"){
return i.monuments.map((j, index) => (
<MapView.Marker
coordinate={{
latitude: j.latitude,
longitude: j.longitude,
}}
pinColor='#009688'
key={index}
>
<MapView.Callout tooltip style={styles.callout}>
<View style={styles.calloutContainer}>
<TouchableHighlight
onPress={() => navigate('MonumentoDetails')}
style={[styles.bubble, {backgroundColor:'#009688'}]}
>
<View>
<Text style={styles.name}>{j.name}</Text>
</View>
</TouchableHighlight>
<View style={[styles.arrow, {borderTopColor:'#009688'}]} />
</View>
</MapView.Callout>
</MapView.Marker>
))
}
})}
</MapView>
</View>
);
}
}
我做错了什么? 谢谢!