如何在stackNavigator屏幕内水平滑动?

Joh*_*doe 4 react-native react-navigation

我正在尝试在同一屏幕的不同屏幕之间创建滑动导航 StackNavigator

当我设置swipeEnabled:truenavigationOptions,我的应用程序宁愿在不同的选项卡之间导航。

我宁愿想从同一组内浏览Screen AScreen B的例子。

我怎样才能做到这一点?

小智 5

我有同样的用例。我想要一个 swipaeable <StackNavigator>。我能找到的解决方案是<StackNavigator>使用 a模拟a <TabNavigator>,或者更具体地说,使用createMaterialTopTabNavigator().

我所做的是创建此选项卡(这是 react-navigation 2 中唯一允许 的选项卡swipeEnabled)并添加display: none到其样式中。这样我就可以拥有一个<TabNavigator>表现得像<StackNavigator>.

这是代码:

const SwipeableNavigator = createMaterialTopTabNavigator({
  FrontCard: FrontCardScreen,
  BackCard: BackCardScreen
},
{
  swipeEnabled: true,
  tabBarOptions: {
    style: { display: "none" }
  }
});
Run Code Online (Sandbox Code Playgroud)

然后<SwipeableNavigator />随心所欲地拨打电话。

  • 要隐藏选项卡栏,您还可以提供自定义选项卡栏组件:`tabBarComponent: () =&gt; null`。这样你就不必渲染然后用样式隐藏它 (2认同)