Navigeren tussen schermen
Navigeer vooruit en terug tussen bestemmingen.
Navigeren tussen schermen is een gratis Android Academy-les op CoddyKit. Dit is les 2 van 4. Je kunt 3 lessen uit dit leerpad gratis volledig lezen — daarna ontgrendelt CoddyKit PRO alle lessen, plus praktische oefeningen met een ingebouwde code-editor en een AI-tutor die 24/7 beschikbaar is. Deze les maakt deel uit van het leertraject Android Academy. Je voortgang wordt gesynchroniseerd op het web en in de CoddyKit-app. De cursus Android Academy bevat in totaal 4 lessen.
Verdergaan
Als je NavHost is ingesteld, ga je naar een ander scherm door navigate aan te roepen op de NavController met de doelroute.
navController.navigate("details")Activeren vanuit een knop
Navigatie vindt meestal plaats in een callback, zoals de onClick van een knop.
Button(onClick = { navController.navigate("details") }) {
Text("Open details")
}De terugstapel
Elke aanroep van navigate plaatst de nieuwe bestemming boven op de terugstapel. De terugknop van het systeem haalt deze automatisch van de stapel en keert terug naar het vorige scherm.
popBackStack
Als je programmatisch wilt teruggaan, bijvoorbeeld vanuit een aangepaste knop voor "Omhoog", roep je popBackStack aan. Hiermee verwijder je de huidige bestemming en keer je terug naar de vorige.
navController.popBackStack()navigateUp
navigateUp() is vergelijkbaar en is de juiste keuze voor de pijl Omhoog in de werkbalk. Deze houdt rekening met de navigatiehiërarchie.
navController.navigateUp()Dubbele bestemmingen voorkomen
Als je snel twee keer op een knop tikt, kan hetzelfde scherm twee keer op de stapel worden geplaatst. Gebruik launchSingleTop = true om dubbele exemplaren van een bestemming te voorkomen.
navController.navigate("details") {
launchSingleTop = true
}popUpTo
popUpTo verwijdert tijdens het navigeren een deel van de terugstapel. Dit is handig na het aanmelden: ga naar Home en verwijder het aanmeldscherm, zodat de terugknop er niet naar terugkeert.
navController.navigate("home") {
popUpTo("login") { inclusive = true }
}inclusive
inclusive = true betekent dat het doel van popUpTo ook wordt verwijderd. Met inclusive = false stopt het verwijderen direct erboven.
Schermen losgekoppeld houden
Geef niet de volledige NavController door aan elk scherm, maar geef lambdas door. Het scherm roept onOpenDetails() aan en hoeft niets te weten over de interne werking van de navigatie.
@Composable
fun HomeScreen(onOpenDetails: () -> Unit) {
Button(onClick = onOpenDetails) { Text("Details") }
}De lambda verbinden
De NavHost koppelt de lambda aan een echte aanroep van navigate, zodat alle navigatielogica op één plek blijft.
composable("home") {
HomeScreen(onOpenDetails = {
navController.navigate("details")
})
}Alles samenbrengen
Home navigeert naar details; details gaat terug met de pijl Omhoog.
composable("home") {
HomeScreen(onOpenDetails = { navController.navigate("details") })
}
composable("details") {
DetailsScreen(onBack = { navController.popBackStack() })
}Korte controle
Welke aanroep brengt de gebruiker programmatisch terug naar het vorige scherm?
Samenvatting
Navigeren:
navigate("route")plaatst een bestemming op de stapel.popBackStack()/navigateUp()gaan terug.- Gebruik
launchSingleTopenpopUpTo { inclusive }om de stapel te beheren. - Geef lambdas door, niet de controller, zodat schermen herbruikbaar blijven.
Leer Kotlin met een AI-tutor — gratis
Schrijf echte code en voer die uit in je browser, krijg direct hulp van een AI-tutor die 24/7 beschikbaar is en ga verder waar je gebleven bent op het web of in de app.
- Cursussen
- 36
- Lessen
- 152
Veelgestelde vragen
Is de les “Navigeren tussen schermen” gratis?
Ja — je kunt hier op het web alle 3 lessen van het leerpad Android Academy, waaronder “Navigeren tussen schermen”, gratis volledig lezen. Daarna ontgrendelt CoddyKit PRO alle lessen, plus interactieve oefeningen met een ingebouwde code-editor en een AI-tutor die 24/7 beschikbaar is. De cursus Android Academy bevat in totaal 4 lessen.
Wat leer ik in “Navigeren tussen schermen”?
Navigeer vooruit en terug tussen bestemmingen. Je oefent met Android Academy door code rechtstreeks in de browser uit te voeren. Een AI-begeleider die 24/7 beschikbaar is beantwoordt je vragen terwijl je de les doorwerkt.
Heb ik ervaring nodig om met Android Academy te beginnen?
Ervaring vooraf is niet nodig. Android Academy op CoddyKit is opgebouwd voor beginners tot gevorderden, zodat je hier of bij het begin kunt starten en in je eigen tempo kunt leren. Dit is les 2 van 4.
Hoe lang duurt de les “Navigeren tussen schermen”?
De meeste lessen van CoddyKit duren ongeveer 5–10 minuten. Elke les is kort en interactief, zodat je gestaag vooruitgaat en op het web en in de app precies verdergaat waar je was gebleven.
Kan ik code schrijven en uitvoeren in deze les over Android Academy?
Ja. Elke les over Android Academy bevat een ingebouwde code-editor, zodat je rechtstreeks in je browser echte code kunt schrijven en uitvoeren en direct feedback van AI krijgt — lokale installatie is niet nodig.
Alle lessen in deze cursus
- NavHost instellen
- Navigeren tussen schermen
- Argumenten doorgeven
- Navigatie onderaan