例如, 我有一个BottomTabNavigator堆栈,其中包含选项卡A和B。 这两个标签本身就是包含以下路线的导航堆栈。
A:
- A1
- A2
B:
- B1
- B2
在任何时候,我的应用程序都应该能够将用户从任何路线(例如B1或B2)导航到另一个堆栈的路线(例如A1或A2)。我可以通过将路由A1和A2添加到B的堆栈中来实现此目标,如下所示
B:
-B1
-B2
-A1
-A2
我这样做是为了使A的路由可在同一堆栈树中供B使用。
尽管我能够做到这一点,但我希望能够导航回路线B2(例如,如果我从B2导航至A1)。但这没有发生。从A1路线往回走。我不确定这是否正确。
如何控制导航并确保返回到我之前所在堆栈的路线。
答案 0 :(得分:1)
我这样做的方式,我不确定这是否正确,但是对我有用。
例如,如果您有两个导航屏幕
A和B
在A内部,您拥有A1
,A1
,在B内部,您拥有B1
,B2
。
您想从A1转到B1,然后按回车键,然后返回A1。但是,正如我们看到的,您已经在其他堆栈中声明了B2,因此,当B1加载时,在其背面按车键,它会返回其父堆栈导航器。
您可以做的是,在B
和A
中声明B1。
像这样,
A:
- A1
- A2
- B1
- B2
B:
- B1
- B2
- A1
- A2
我不确定此解决方案是否有效,但对于复杂的导航它是否适用。