You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

React Native:如何从嵌套导航中打开无Tab与Drawer的独立屏幕?

实现独立全屏屏幕的方案

要实现从Screen1打开不含Tab栏和抽屉的独立屏幕,只需把独立屏幕的Stack导航器提升到Drawer导航器的同级,脱离嵌套的Tab导航结构即可,完全模拟原生Activity/ViewController的全屏效果。

步骤1:重构导航结构

调整后的层级如下:

import { NavigationContainer } from '@react-navigation/native';
import { createDrawerNavigator } from '@react-navigation/drawer';
import { createBottomTabNavigator } from '@react-navigation/bottom-tabs';
import { createStackNavigator } from '@react-navigation/stack';

const Drawer = createDrawerNavigator();
const Tab = createBottomTabNavigator();
const MainStack = createStackNavigator();
const IndependentStack = createStackNavigator();

// 原Tab嵌套Stack的主页面结构
function MainTabs() {
  return (
    <Tab.Navigator>
      <MainStack.Navigator>
        <MainStack.Screen name="Screen1" component={Screen1} />
        <MainStack.Screen name="Screen2" component={Screen2} />
      </MainStack.Navigator>
      {/* 其他Tab页面可在此添加 */}
    </Tab.Navigator>
  );
}

// 独立全屏页面的Stack
function IndependentScreens() {
  return (
    <IndependentStack.Navigator>
      <IndependentStack.Screen name="FullScreen" component={FullScreen} />
      {/* 其他独立页面可在此添加 */}
    </IndependentStack.Navigator>
  );
}

// 根导航:Drawer与独立Stack同级
export default function App() {
  return (
    <NavigationContainer>
      <Drawer.Navigator>
        <Drawer.Screen name="Main" component={MainTabs} />
        <Drawer.Screen name="Independent" component={IndependentScreens} />
      </Drawer.Navigator>
    </NavigationContainer>
  );
}

步骤2:从Screen1跳转至独立屏幕

在Screen1内部,直接通过导航对象触发跳转:

import { useNavigation } from '@react-navigation/native';

function Screen1() {
  const navigation = useNavigation();

  const openFullScreen = () => {
    navigation.navigate('FullScreen');
  };

  return (
    {/* 页面内容 */}
    <Button title="打开独立屏幕" onPress={openFullScreen} />
  );
}

原理说明

将独立页面的Stack放在Drawer导航器的同级后,跳转时会完全覆盖下层的Tab和Drawer视图,自然不会显示Tab栏与抽屉菜单,达到原生全屏页面的效果。


内容的提问来源于stack exchange,提问作者Viacheslav Titov

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.07 23:01:33