我在React Native中遇到了导航问题
我的应用程序有标签导航(主屏幕) . 第一个组件有一个文章列表 . 当用户点击文章时 . 详细文章屏幕将显示在主屏幕上
在第一个组件中 . 我创建了一个 createStackNavigator 来打开详细文章屏幕 . 但问题是它似乎取代了第一个组件而不是覆盖主屏幕
createStackNavigator
这是问题所在
但我想要的就像下面
您可以通过在堆栈导航器的特定页面中隐藏选项卡导航栏来实现 .
const FeedStack = createStackNavigator({ FeedHome: FeedScreen, Details: DetailsScreen, }); FeedStack.navigationOptions = ({ navigation }) => { let tabBarVisible = true; if (navigation.state.index != 0) { tabBarVisible = false; } return { tabBarVisible, }; };
在此示例中, FeedStack 是您在选项卡导航器中的堆栈导航器 . if语句决定在哪些屏幕上显示基于id的选项卡导航器 . 在您的情况下,您只想在一个屏幕上显示导航器 . 我想那个屏幕的id是0,但如果不是,你可以用你想要的id替换它 . 屏幕的ID基于它们在堆栈导航器配置中声明的顺序 .
FeedStack
1 回答
您可以通过在堆栈导航器的特定页面中隐藏选项卡导航栏来实现 .
在此示例中,
FeedStack
是您在选项卡导航器中的堆栈导航器 . if语句决定在哪些屏幕上显示基于id的选项卡导航器 . 在您的情况下,您只想在一个屏幕上显示导航器 . 我想那个屏幕的id是0,但如果不是,你可以用你想要的id替换它 . 屏幕的ID基于它们在堆栈导航器配置中声明的顺序 .