React本机导航可在屏幕材料顶部导航器的一部分上滑动

时间:2020-10-08 15:08:47

标签: react-native react-navigation

我的应用程序中有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

1 个答案:

答案 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