我的应用程序中有materialTopTabNavigator,并且其中一个屏幕需要仅在部分屏幕上启用选项卡手势之间的滑动(例如,从屏幕底部到底部200)。我认为我应该能够使用materialTopTabNavigator的gestureHandlerProps道具来做到这一点,但是它似乎不起作用。该道具允许您将道具传递给基础PanGestureHandler。这是我作为gestureHandlerProps和指向PanGestureHandler文档的链接传递的内容:
gestureHandlerProps={{
maxPointers:1,
failOffsetY:height-200,
hitSlop: {left:0, right:0, top:0, bottom:200}
}}
//height is height of screen
链接到PanGestureHandler文档:https://docs.swmansion.com/react-native-gesture-handler/docs/handler-pan
答案 0 :(得分:0)
我想出了如何使用react-native-gesture-handler文档中列出的通用处理程序道具来执行此操作。我使用了hitSlop道具,并将其传递给具有height和top属性的对象,如下所示。这已传递到我的材料顶部标签导航器gestureHandlerProps属性。
gestureHandlerProps={{
maxPointers: 1,
hitSlop: {height: 100, top: 0}
}}
这仅允许从屏幕底部的100个点激活材料顶部选项卡导航器的基础PanGestureHandler。
链接到常用处理程序道具:https://docs.swmansion.com/react-native-gesture-handler/docs/handler-common