无法使用反应本机地图中的函数 hideCallout
Cannot use the function hideCallout from react native maps
当我在我的应用程序上按下卡片的 X 按钮时,我目前正在尝试关闭我的标注。
我的代码是这样的。 ** 关卡功能**
unsetCard = id => {
this.setState({
...this.state,
showCard: false,
});
this.markers.hideCallout();
if (this.state.keyboard) {
Keyboard.dismiss();
}
};
这是我的 ** 地图视图代码,我使用 RN 聚类 **
<MapView
//
mapRef={ref => (this.myMapRef = ref)}
//
onPress={this.unsetCard}>
{this.props.data.map(marker => (
<Marker
key={marker.id}
ref={ref => (this.markers = ref)}
//
}>
<Callout
//
}}>
<CustomCallout title={marker.t} />
</Callout>
</Marker>
))}
</MapView>
终于在同一个文件的这个组件中调用了unset card的函数:
<CustomCardWithImage
close={() => this.unsetCard(this.state.cardInfo.id)}
/>
如果有人告诉我如何使用标记的引用,我将不胜感激,因为尽管我尝试了很多,但还是行不通。
提前致谢,
在认真考虑不再继续使用此应用程序后,我休息了一下并解决了问题。如果您有兴趣,可以通过以下方式使用显示或隐藏标注:
初始化标记
constructor(props) {
super();
this.markers = [];
}
创建标记参考
<Marker
key={marker.id}
ref={ref => {
this.markers[marker.id] = ref;
}}>
需要的地方打电话
this.markers[id].hideCallout();
我希望有一天有人觉得它有用
当我在我的应用程序上按下卡片的 X 按钮时,我目前正在尝试关闭我的标注。
我的代码是这样的。 ** 关卡功能**
unsetCard = id => {
this.setState({
...this.state,
showCard: false,
});
this.markers.hideCallout();
if (this.state.keyboard) {
Keyboard.dismiss();
}
};
这是我的 ** 地图视图代码,我使用 RN 聚类 **
<MapView
//
mapRef={ref => (this.myMapRef = ref)}
//
onPress={this.unsetCard}>
{this.props.data.map(marker => (
<Marker
key={marker.id}
ref={ref => (this.markers = ref)}
//
}>
<Callout
//
}}>
<CustomCallout title={marker.t} />
</Callout>
</Marker>
))}
</MapView>
终于在同一个文件的这个组件中调用了unset card的函数:
<CustomCardWithImage
close={() => this.unsetCard(this.state.cardInfo.id)}
/>
如果有人告诉我如何使用标记的引用,我将不胜感激,因为尽管我尝试了很多,但还是行不通。
提前致谢,
在认真考虑不再继续使用此应用程序后,我休息了一下并解决了问题。如果您有兴趣,可以通过以下方式使用显示或隐藏标注:
初始化标记
constructor(props) {
super();
this.markers = [];
}
创建标记参考
<Marker
key={marker.id}
ref={ref => {
this.markers[marker.id] = ref;
}}>
需要的地方打电话
this.markers[id].hideCallout();
我希望有一天有人觉得它有用