在react-native中组合Stack,Drawer和Tab导航器

问题描述

我目前已经构建了这个导航系统,但是我感觉按照事情的顺序有点不对劲。我正在慢慢开发一些问题,例如无法在tav导航器的某些屏幕上隐藏抽屉式导航器等。

有人可以帮助我组织导航,使它更有意义吗?

const Stack = createStackNavigator();
const Drawer = createDrawerNavigator();
const Tab = createMaterialTopTabNavigator();

 const SwipeTabNavigator = () => {
 return (
     <Tab.Navigator
     sceneContainerStyle={{
       backgroundColor: theme['primaryColor'],}}
  tabBarOptions={{
    style: {
      display: 'none',backgroundColor: '#08457e',},}}>
  <Tab.Screen name="Component1" component={Component1} />
  <Tab.Screen name="Component2" component={Component2} />
  <Tab.Screen name="Component3" component={Component3} />
</Tab.Navigator>
);
};

 const MainStackNavigator = () => {
 return (
   <Stack.Navigator
     screenoptions={{
      cardStyle: {backgroundColor: theme['primaryColor']},header: () => <MenuComponent />,}}>
       <Stack.Screen name="Login" component={LoginScreen} />
       <Stack.Screen name="SwipeTabNavigator" component={SwipeTabNavigator} />
       <Stack.Screen name="List" component={ListScreen} />
       <Stack.Screen name="Detail" component={DetailScreen} />
     </Stack.Navigator>
    );
   };

   const App = () => {
   return (
<Root>
  <NavigationContainer>
    <Drawer.Navigator
      screenoptions={{swipeEnabled: false}}
      drawerContent={(props) => <SidebarComponent {...props} />}
      initialRouteName="Login">
      <Drawer.Screen name="List" component={MainStackNavigator} />
    </Drawer.Navigator>
  </NavigationContainer>
</Root>
  );
};

export default App;

用户登录后,导航导航到“ SwipeTabNavigator”,我希望在每个屏幕上都可以使用抽屉:/

任何重构帮助都是一种祝福,谢谢!

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)

相关问答

Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其...
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。...
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbc...