垂直ScrollView内的水平ScrollView不允许其他可触摸对象在React Native中响应(仅在iOS中)

时间:2019-09-06 07:16:10

标签: ios react-native react-native-swiper

此问题仅发生在IOS中。我创建了一个垂直ScrollView。里面有多个子代,其中之一是React Native Swiper组件(https://www.npmjs.com/package/react-native-swiper)。当Swiper通过动画从一个索引自动播放到另一个索引时,整个屏幕上的其他触摸都会被阻止。

我试图放

          onStartShouldSetResponder={() => false}

          onMoveShouldSetResponder={() => false}

          onStartShouldSetResponderCapture={() => false}

          onMoveShouldSetResponderCapture={() => false}

在垂直ScrollView上,但是无法将触摸传递给子级。 每当在垂直滚动视图上发生这种情况时,就会调用onResponderGrant。 我试过更改库本身的代码,但是什么也没做。该库在内部使用水平滚动视图,就像在水平滚动视图上调用scrollTo函数时一样,即使我使用手势响应器系统取消对垂直滚动视图的触摸,也将向外部垂直滚动视图授予触摸。请帮助处理它。

类似于

<ScrollView>
<ScrollView horizontal></ScrollView>
<TouchableOpacity onPress={/*action*/}></TouchableOpacity>
<TouchableOpacity onPress={/*action*/}></TouchableOpacity>
</ScrollView>

在理想情况下,其他触摸应该可以响应,但是在这种情况下,它们在Ios中没有响应。

0 个答案:

没有答案