React native React navigation 4,底部选项卡导航器:如何在每次从后台重新打开应用程序时打开初始路线
当前行为 我有一个带有4个选项卡的TabNavigator,每个选项卡都是stackNavigator,现在每个stackNavigator只有一个屏幕:主页、地图、预订、个人资料。我用的是React导航4。 在每个选项卡中,我都会使用导航选项选项卡BARONPRESS在屏幕之间导航,这样,backBehavior:“history”就有了意义React native React navigation 4,底部选项卡导航器:如何在每次从后台重新打开应用程序时打开初始路线,react-native,react-navigation,react-navigation-bottom-tab,React Native,React Navigation,React Navigation Bottom Tab,当前行为 我有一个带有4个选项卡的TabNavigator,每个选项卡都是stackNavigator,现在每个stackNavigator只有一个屏幕:主页、地图、预订、个人资料。我用的是React导航4。 在每个选项卡中,我都会使用导航选项选项卡BARONPRESS在屏幕之间导航,这样,backBehavior:“history”就有了意义 const TabNavigator = createBottomTabNavigator( { Home: { scree
const TabNavigator = createBottomTabNavigator(
{
Home: {
screen: HomeStack,
navigationOptions: {
tabBarOnPress: ({navigation}) => {
navigation.navigate('Home')
},
}
},
//other tabs
},
{
initialRouteName: 'Home',
backBehavior: 'history'
}
)
但是如果我在屏幕之间导航,可能是按照HOME->PROFILE->HOME->MAPS的顺序,路由器的堆栈是PROFILE,HOME,MAPS,因为导航函数的行为。
同样,当我们在安卓设备上按下后退按钮时,访问屏幕的顺序是“地图->主页->个人资料”,如果我们再次按下后退按钮,我们将退出应用程序,将其置于后台。现在,回到应用程序中,打开的屏幕是PROFILE,它也是导航堆栈中的第一条路线
预期行为
当我从后台重新打开应用程序时,我不想出现在个人资料屏幕上,而是出现在主屏幕上。我想重置导航堆栈中的第一条路由,用主堆栈更改它。这与Instagram的行为相同(尝试转到主页->个人资料->主页,按两次后退按钮;现在按第三次后退按钮:应用程序进入后台;现在重新打开Instagram:应用程序从主页重新启动)我也有同样的问题,你找到解决方案了吗?-看这个。您可以检测应用程序是否来自后台。如果是,则在配置文件上导航到主页我有相同的问题,您找到解决方案了吗?-看这个。您可以检测应用程序是否来自后台。如果是,则在配置文件上导航到主页