0Pricing
Android Academy · Lektion

NavHost einrichten

Definieren Sie einen Navigationsgraphen in Compose.

NavHost einrichten ist eine kostenlose Android Academy-Lektion auf CoddyKit. Dies ist Lektion 1 von 4. Du kannst die komplette Lektion unten kostenlos lesen – dann übst du sie direkt im Browser mit einem integrierten Code-Editor und einem KI-Tutor rund um die Uhr. Sie ist Teil des Android Academy-Lernpfads, und dein Fortschritt wird über Web und CoddyKit-App synchronisiert. Der Android Academy-Kurs umfasst insgesamt 4 Lektionen.

Zwischen Bildschirmen navigieren

Die meisten Apps haben mehr als einen Bildschirm. Mit der Bibliothek Navigation Compose können Sie zwischen Composable-Bildschirmen wechseln und dabei einen Back Stack beibehalten.

Die Abhängigkeit

Fügen Sie die Navigationsbibliothek in Ihre Gradle-Datei ein. Danach stehen Ihnen NavController, NavHost und Hilfsfunktionen zur Verfügung.

// build.gradle (module)
implementation("androidx.navigation:navigation-compose:2.7.0")

Der NavController

Der NavController ist das Objekt, das die Navigation ausführt und den Back Stack speichert. Erstellen Sie ihn mit rememberNavController().

val navController = rememberNavController()

Der NavHost

Der NavHost ist ein Composable, das das aktuelle Ziel anzeigt. Es benötigt den Controller und eine Route für startDestination.

NavHost(
    navController = navController,
    startDestination = "home"
) {
    // destinations go here
}

Ziele definieren

Definieren Sie innerhalb der Lambda von NavHost jeden Bildschirm mit composable("route"). Die Zeichenfolge ist die Route des Ziels.

composable("home") {
    HomeScreen()
}

Routen sind Zeichenfolgen

Eine Route ist eine eindeutige Zeichenfolgen-ID für ein Ziel, ähnlich einem URL-Pfad. Sie navigieren über die Route, und der NavHost zeigt das passende Composable an.

Ein Graph mit zwei Bildschirmen

Hier sehen Sie einen minimalen Navigationsgraphen mit zwei Zielen. "home" wird zuerst angezeigt, weil es das startDestination ist.

NavHost(navController, startDestination = "home") {
    composable("home") { HomeScreen() }
    composable("details") { DetailsScreen() }
}

startDestination

startDestination ist der erste Bildschirm, den der Benutzer sieht, und die Wurzel des Back Stacks. Die App kann nicht darüber hinaus zurückspringen.

Den Controller weiterreichen

Bildschirme, die Navigation auslösen, benötigen den NavController. Übergeben Sie ihn als Parameter oder — noch besser — einfache Lambdas wie onContinue, damit die Bildschirme wiederverwendbar bleiben.

composable("home") {
    HomeScreen(onOpenDetails = {
        navController.navigate("details")
    })
}

Ein NavHost pro Bereich

Normalerweise gibt es am oberen Ende Ihrer App einen einzigen NavHost. Der Controller wird einmal mit rememberNavController() erstellt und von allen Zielen gemeinsam verwendet.

Zusammenfügen

Eine vollständige Einrichtung: Controller, Host und zwei Ziele.

@Composable
fun App() {
    val navController = rememberNavController()
    NavHost(
        navController = navController,
        startDestination = "home"
    ) {
        composable("home") { HomeScreen() }
        composable("details") { DetailsScreen() }
    }
}

Schnelltest

Welches Objekt speichert den Back Stack und führt die Navigation aus?

Zusammenfassung

Navigationseinrichtung:

  • rememberNavController() erstellt den Controller.
  • NavHost zeigt Ziele an und benötigt ein startDestination.
  • Definieren Sie Bildschirme mit composable("route"); Routen sind eindeutige Zeichenfolgen.

Häufig gestellte Fragen

Ist die Lektion „NavHost einrichten“ kostenlos?

Ja — der vollständige Text von „NavHost einrichten“ ist hier im Web kostenlos zu lesen. Um sie interaktiv zu üben (integrierter Code-Editor und 24/7 KI-Tutor) und den Rest des Android Academy-Kurses freizuschalten, upgrade auf CoddyKit PRO. Der Android Academy-Kurs umfasst insgesamt 4 Lektionen.

Was lerne ich in „NavHost einrichten“?

Definieren Sie einen Navigationsgraphen in Compose. Du übst Android Academy mit praktischem Code, den du direkt im Browser ausführst, und ein 24/7 KI-Tutor beantwortet deine Fragen während du die Lektion bearbeitest.

Brauche ich Erfahrung, um Android Academy zu starten?

Keine Vorkenntnisse erforderlich. Android Academy auf CoddyKit ist für Anfänger bis fortgeschrittene Lernende strukturiert, sodass du hier starten oder von Anfang an beginnen und in deinem eigenen Tempo voranschreiten kannst. Dies ist Lektion 1 von 4.

Wie lange dauert die Lektion „NavHost einrichten“?

Die meisten CoddyKit-Lektionen dauern etwa 5–10 Minuten. Jede ist kompakt und interaktiv, sodass du stetig Fortschritte machst und genau dort weitermachst, wo du aufgehört hast – im Web und in der App.

Kann ich in dieser Android Academy-Lektion Code schreiben und ausführen?

Ja. Jede Android Academy-Lektion enthält einen integrierten Code-Editor, sodass du echten Code direkt in deinem Browser schreibst und ausführst und sofort KI-Feedback erhältst — ohne lokale Einrichtung erforderlich.

Alle Lektionen in diesem Kurs

  1. NavHost einrichten
  2. Zwischen Bildschirmen navigieren
  3. Argumente übergeben
  4. Untere Navigation
← Zurück zu Android Academy