如何使用React native在IOS中的地图上启用居中标记?

问题描述

我正在使用react-native-maps中的Map组件,并且在其中显示了许多标记,但是每当在 Android 上单击标记时,单击的标记就会自动居中,而这种行为不会存在于 IOS 中。

是否有办法使标记 IOS 中也居中,或者至少在 Android 中将其禁用。 我想在两个操作系统中都具有相同的行为。

任何帮助或想法都将不胜感激。

解决方法

您可以设置

<MapView
moveOnMarkerPress={false}
...
/>

这将禁用android-behavior,或者您可以在iOS上处理MarkerPress,并在其上居中放置MapView,如下所示:

 <MapView
    ...
    ref={ref => {
       this.map = ref;
    }}
    >
      {this.state.markers.map(marker => (
        <Marker
          ...
          onSelect=(({coordinate}) =>  this.map.animateCamera({center: coordinate},{ duration: 2000 }))
        />
      ))}
    </MapView>

相关问答

Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其...
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。...
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbc...