可点击的地图视图标记

Clickable Mapview Marker

我正在尝试让标记在 React Native 中可点击。例如,对于一个特定的餐厅,我想显示标记,当用户点击它时,餐厅的名称(现在可以使用),当用户点击餐厅的名称时,它会直接进入他们的网站。 只是为了它:

constructor(props){
    super(props);
    this.state = {
      name: "",
      email: "",
      region: {
        // luxembourg region
        latitude: 49.6116,
        longitude: 6.1319,
        latitudeDelta: 0.0922,
        longitudeDelta: 0.0421,
      },
      markers: [{
        title: 'Royal Bengal',
        coordinates: {
        latitude: 49.606259,
        longitude: 6.105683
        }}
        ]};
}

稍后显示地图:

<MapView
            style={styles.map}
            region={this.state.region}
            showUserLocation = {true}
            >
              {this.state.markers.map((marker, index) => (
                <MapView.Marker
                  key = {index}
                  coordinate = {marker.coordinates}
                  title = {marker.title}
                  // Icon =
                  // pinColor = {'#474744'}
                /> )
              )}

假设我希望用户在点击 Royal Bengal 时转到 google.com,我应该怎么做?使用 onPress 和其他工具查看文档并不是很有帮助。

<MapView.Marker
   key = {index}
   onPress={() => Linking.openURL('your-url')}
   coordinate = {marker.coordinates}
   title = {marker.title}
 />

根据 react-native-maps docs,onPress 事件使标记可点击。 要在设备的默认浏览器中打开 link,请根据 react-native docs

使用 Linking.openURL('your-url')