所以,我想创建一个类似于下面的内容的布局。 [请参阅图像]ScrollView下的可点击背景[React Native]
所以背景有一个全屏MapView
(反应本地地图)与Markers
在上面,它需要点击。
还有一个Scrollview
全屏幕高度超过MapView
,它最初有一些与其内容相关的顶边距。
但是,如果我这样安排我的视图的问题,地图上的标记不能在初始状态点击。
<View>
<MapView>
<Marker clickEventHere></Marker>
<Marker clickEventHere></Marker>
</MapView>
<ScrollView fullscreen>
<View marginTop></View>
</ScrollView>
<View>
我不确定它是否真的有可能解决这个问题。
解决方案试图
yScrolled = event.nativeEvent.contentOffset.y;
yValue = this.state.yValue - yScrolled;
upwardScroll = yScrolled > 0;
if(upwardScroll && (yValue > 0)){
this.setState({
yValue: yValue
});
}
if(yScrolled === 0){
yScrolled = -10;
}
if(!upwardScroll && (yValue <= scrollViewMarginTop)){
yValue = this.state.yValue - yScrolled;
console.debug("UPDATE DOWNWARD");
this.setState({
yValue: yValue
});
}
您是否尝试过将'pointerEvents:'box-none''传递给ScrollView的样式?更多信息在文档中:https://facebook.github.io/react-native/docs/view.html#pointerevents –
谢谢!我没有试过这个。但是这也会使ScrollView中的可见或者子视图变成不可点击的,我不想这样做。 –
从我之前的评论中提供的链接:''box-none':视图从来不是触摸事件的目标,但它的子视图可以.' –