Sobes.tech
Junior — Middle

Jak lze implementovat mechanismus přepínání obrazovek v Jetpack Compose?

sobes.tech AI

Odpověď od AI

V Jetpack Compose je navigace mezi obrazovkami obvykle implementována pomocí knihovny Navigation Compose, která spravuje navigaci mezi různými Composable.

Hlavní kroky:

  1. Vytvořte NavHost, který obsahuje NavController a definuje navigační graf.
  2. Definujte composable pro každou obrazovku s unikátní trasou (route).
  3. Použijte NavController k navigaci mezi obrazovkami voláním navigate().

Příklad:

val navController = rememberNavController()

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

@Composable
fun HomeScreen(onNavigate: () -> Unit) {
    Button(onClick = onNavigate) {
        Text("Přejít na obrazovku detailů")
    }
}

@Composable
fun DetailsScreen() {
    Text("Obrazovka detailů")
}

Tento přístup umožňuje snadné řízení zásobníku obrazovek a parametrů navigace.