首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在Tab switch上,打开Tab Navigator内的stack Navigator的初始屏幕,而不是上次访问的屏幕

在Tab switch上,打开Tab Navigator内的stack Navigator的初始屏幕,而不是上次访问的屏幕
EN

Stack Overflow用户
提问于 2020-12-11 06:26:40
回答 1查看 23关注 0票数 0
代码语言:javascript
复制
Tab.Navigator
    Tab1-Stack.Navigator (SettingStack)
           -SettingsScreen
           -ProfileScreen
   Tab2-Stack.Navigator (HomeStack)
           -HomeScreen
           -DetailsScreen

我们从HomeScreen开始并导航到DetailsScreen。然后,我们使用选项卡栏切换到SettingsScreen并导航到ProfileScreen。执行此操作后,如果使用选项卡栏切换回HomeStack,则会打开DetailsScreen - HomeStack的导航状态已保留

但是我想如果一个用户切换标签,那么堆栈的初始屏幕应该是打开的,而不是最后打开的屏幕,如何实现呢?

代码语言:javascript
复制
function App() {
  return (
    <NavigationContainer>
      <Tab.Navigator>
        <Tab.Screen name="First">
          {() => (
            <SettingsStack.Navigator>
              <SettingsStack.Screen
                name="Settings"
                component={SettingsScreen}
              />
              <SettingsStack.Screen name="Profile" component={ProfileScreen} />
            </SettingsStack.Navigator>
          )}
        </Tab.Screen>
        <Tab.Screen name="Second">
          {() => (
            <HomeStack.Navigator>
              <HomeStack.Screen name="Home" component={HomeScreen} />
              <HomeStack.Screen name="Details" component={DetailsScreen} />
            </HomeStack.Navigator>
          )}
        </Tab.Screen>
      </Tab.Navigator>
    </NavigationContainer>
  );
}
EN

回答 1

Stack Overflow用户

发布于 2020-12-11 10:28:59

您应该为屏幕名称'Second‘实现选项卡项触摸,并使导航弹出到根视图。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/65243183

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档