我在 Android 上使用最新版本的导航和撰写,我遇到了一个错误,我无法弹出导航的起始目的地。问题是,如果我有 3 个目的地(A、B、C)并且从 A-> B -> C 出发,我无法从 backstack 中弹出 A,但是当我调用时会弹出 B popUpTo(B)
inclusive = true
,导致后退按钮回到A。
我的代码:
导航主机
setContent {
val navController = rememberNavController()
NavHost(
navController = navController,
startDestination = "route_to_a"
) {
composable("route_to_a") {
LoginScreen(navController)
}
composable("route_to_b") {
RegisterScreen(navController)
}
composable("route_to_c") {
HomeScreen(navController = navController)
}
}
}
导航
- A到B
Button(onClick = { navController.navigate("route_to_b")}) {}
- B到C
Button(onClick = {
navController.navigate("route_to_c") {
popUpTo("route_to_b") {
inclusive = true
}
}
}) {}
我想创建一个流程,在上 C 后 A 和 B 都不在后堆栈上。但由于某种原因,我无法从后堆栈中删除 A ...我该怎么做?