如何在地图标注中使用TouchableOpacity?

时间:2019-04-01 22:43:17

标签: react-native react-native-maps

我有一个组件,可用于列表结果中的单元格和地图中的详细信息标注。

TouchableOpacity

查看列表时,onPress正常工作。但是,在地图标注中使用StationCellView时,不会调用// from MapView renderMarkers() { return this.state.stations.map(station => { const logo = require("../assets/logos/BOLTIcon.jpg"); return ( <Marker coordinate={{ latitude: station.location.lat, longitude: station.location.lng }} key={station.location.lat.toString() + station.location.lng.toString()} > <Callout> <StationCellView station={station}/> </Callout> </Marker> ); }); } render() { return ( <View style={styles.container}> <MapView style={{ flex: 1 }} region={this.state.region} showsUserLocation={true} > {this.renderMarkers()} </MapView> <Callout style={styles.searchCallout}> <TextInput onChangeText={searchText => this.setState({ searchText })} // ... props ... /> </Callout> </View> ); } 方法:

this.props.navigation.navigate

请暂时忽略在新闻处理程序中调用{{1}}的问题。我已经在列表视图中解决了该问题,一旦触发处理程序,便会在地图视图中对其进行修复。

当我从列表视图中单击Touchables时,调试器控制台中将显示“单击文本”。当我从地图标注中单击“可触摸”时,任何地方都不会发生任何事情。

可能会注意到,当我第一次单击地图中的Touchable时,不透明度会发生变化,但是如果再次单击它,则什么也不会发生。

我猜想在视图层次结构中映射和标注的工作方式存在问题吗?有人知道吗?

0 个答案:

没有答案