Wie entferne ich Schubladenrouten aus BackStack in Jetpack Compose?Android

Forum für diejenigen, die für Android programmieren
Anonymous
 Wie entferne ich Schubladenrouten aus BackStack in Jetpack Compose?

Post by Anonymous »

In meiner App habe ich sowohl eine untere Leiste als auch eine Navigationsleiste.
Die mit der unteren Leiste verbundenen Bildschirme sind (Startseite, Suche, Bibliothek, Premium, Erstellen),
Navigationsleiste sind (Nachrichten, Verlauf, Einstellungen).
Mein Problem ist, wenn ich zum Beispiel „HomeRoute“ und dann „SearchRoute“ und dann „HistoryRoute“ drücke. Wenn ich schließlich „SearchRoute“ erneut drücke, wird der Suchbildschirm nicht angezeigt, sondern der Verlaufsbildschirm.
So entferne ich Jede Seite im Zusammenhang mit der Navigationsschublade, wenn ich erneut auf Routen in der unteren Leiste drücke.
Dies ist mein aktueller NavHost

Code: Select all

@Composable
fun MainNavGraph(navController: NavHostController) {
NavHost(
navController = navController,
startDestination = HomeRoute,
) {
homeScreen()
searchScreen()
libraryScreen()
premiumScreen()
createScreen()

navigation(startDestination = HistoryRoute) {
historyScreen()
newsScreen()
settingsScreen()
}
}

@Serializable object DrawerGraph
So wechsle ich die Bildschirme in der unteren Leiste

Code: Select all

navController.navigate(item.route){
popUpTo(navController.graph.startDestinationId){
saveState = true
}
launchSingleTop = true
restoreState = true
}
So wechsle ich den Bildschirm der Navigationsleiste

Code: Select all

navController.navigate(item.route) {
launchSingleTop = true
restoreState = false
}

Quick Reply

Change Text Case: 
   
  • Similar Topics
    Replies
    Views
    Last post