首页 > 解决方案 > 包裹在 SwitchNavigator 中的 Tab Navigator 无法使用后退按钮获取标题栏

问题描述

现在我有一个带有所有屏幕的切换导航器,可以路由所有内容。设置如下。我的应用程序启动后将我带到登录页面,一旦登录将我带到具有我的主屏幕的 TabNavigator。我的主屏幕上有一个事件列表。单击该事件时,它会将您带到更详细的页面。这个详细的页面应该有一个带有返回按钮的标题栏,可以返回到主屏幕。到目前为止,还没有办法将标题栏设置为返回。

render() {

         return(<AppContainer />);

  }
}

const HomeTabNavigator = createBottomTabNavigator({
  Home {
    screen: Home
  },
  Settings
});



const AppStackNavigator = createSwitchNavigator({
  Home: {
    screen: Login,  
  },
  Signup: { 
    screen: Signup,
    navigationOptions: {
      //title: 'Registration',
      //header: null
    }
  },
  Main: {
    screen: HomeTabNavigator,
    navigationOptions: {

    }
  },
  Event: {
    screen: Event,
    navigationOptions: {
      title: "Pickup",
    }
  }
});

const AppContainer = createAppContainer(AppStackNavigator);

“事件”屏幕是列表中的屏幕,它应该有标题“拾取”和一个后退按钮,但它没有显示

导航的 gif: http ://recordit.co/bmAWxsIEpp

标签: react-nativereact-navigation

解决方案


感谢 Ziyo 为我指明了正确的方向。

switchStackNavigator 和 stacknavigator 用于不同的事情。它们不可互换。switchStack 实际上是创建的,因此对于您只想显示单个屏幕的身份验证等情况,没有后退按钮。

https://reactnavigation.org/docs/en/switch-navigator.html


推荐阅读