Android Academy · Les

Argumenten doorgeven

Stuur gegevens naar een bestemming.

Les 3 van 413 stappen

Argumenten doorgeven is een gratis Android Academy-les op CoddyKit. Dit is les 3 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.

Gegevens tussen schermen doorgeven

Vaak heeft een bestemming gegevens nodig, zoals de id van het item dat moet worden weergegeven. In Navigation Compose codeer je argumenten rechtstreeks in de route, vergelijkbaar met een URL.

Route met een tijdelijke aanduiding

Declareer een tijdelijke aanduiding in de route met accolades. Hier is {id} een argument met de naam id.

composable("details/{id}") { backStackEntry ->
    // read id here
}

Het type van het argument declareren

Geef de navigator het type van het argument met arguments en navArgument. De waarde wordt dan voor je gevalideerd en geconverteerd.

composable(
    "details/{id}",
    arguments = listOf(navArgument("id") { type = NavType.IntType })
) { /* ... */ }

NavType

NavType declareert het gegevenstype van het argument, zoals IntType, StringType en BoolType. De navigator verwerkt de routewaarde overeenkomstig.

Het argument lezen

De lambda van de bestemming geeft je een backStackEntry. Lees argumenten uit backStackEntry.arguments.

composable(
    "details/{id}",
    arguments = listOf(navArgument("id") { type = NavType.IntType })
) { backStackEntry ->
    val id = backStackEntry.arguments?.getInt("id") ?: 0
    DetailsScreen(id = id)
}

Navigeren met een waarde

Als je het scherm wilt openen, bouw je de routetekenreeks op en vervang je de tijdelijke aanduiding door de echte waarde.

navController.navigate("details/42")

De route veilig opbouwen

Gebruik tekenreekstemplates om de waarde in te voegen. Zorg dat het padsegment exact overeenkomt met de gedeclareerde route.

val itemId = 42
navController.navigate("details/$itemId")

Optionele argumenten

Optionele argumenten gebruiken een querystringnotatie met ?name=value en een defaultValue. Je kunt ze weglaten tijdens het navigeren.

composable(
    "search?query={query}",
    arguments = listOf(navArgument("query") {
        defaultValue = ""
    })
) { /* ... */ }

Voorzichtig met tekenreeksargumenten

Tekenreeksargumenten moeten veilig zijn voor URL's. Geef geen lange tekst of schuine strepen door via routes; gebruik daarvoor liever een gedeelde ViewModel of repository met een id als sleutel.

Geef id's door, geen objecten

Beste praktijk: geef een kleine identifier, zoals een item-id, door via de route en zoek vervolgens het volledige object op in het bestemmingsscherm. Serialiseer geen grote objecten in routes.

Alles samenbrengen

Een lijst navigeert naar een detailscherm en geeft de geselecteerde id door.

composable("list") {
    ListScreen(onItemClick = { id ->
        navController.navigate("details/$id")
    })
}
composable(
    "details/{id}",
    arguments = listOf(navArgument("id") { type = NavType.IntType })
) { entry ->
    val id = entry.arguments?.getInt("id") ?: 0
    DetailsScreen(id = id)
}

Korte controle

Hoe declareer je in een route een verplicht geheelgetalargument met de naam id?

Samenvatting

Argumenten doorgeven:

  • Plaats een {placeholder} in de route.
  • Declareer het type met navArgument + NavType.
  • Lees het uit backStackEntry.arguments.
  • Navigeer met de vervangen waarde; geef kleine id's door, geen grote objecten.
Gratis beginnen

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 “Argumenten doorgeven” gratis?

Ja — je kunt hier op het web alle 3 lessen van het leerpad Android Academy, waaronder “Argumenten doorgeven”, 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 “Argumenten doorgeven”?

Stuur gegevens naar een bestemming. 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 3 van 4.

Hoe lang duurt de les “Argumenten doorgeven”?

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

  1. NavHost instellen
  2. Navigeren tussen schermen
  3. Argumenten doorgeven
  4. Navigatie onderaan
← Terug naar Android Academy