Sobes.tech
Junior — Middle

Cum se poate implementa un mecanism de schimbare a ecranelor în Jetpack Compose?

sobes.tech AI

Răspuns de la AI

În Jetpack Compose, navigarea între ecrane se realizează de obicei cu ajutorul bibliotecii Navigation Compose, care gestionează navigarea între diferite Composable.

Pașii principali:

  1. Crearea unui NavHost care conține un NavController și definește graficul de navigație.
  2. Definirea unui composable pentru fiecare ecran cu o rută (route) unică.
  3. Utilizarea NavController pentru a naviga între ecrane prin apelarea navigate().

Exemplu:

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("Mergi la ecranul detaliilor")
    }
}

@Composable
fun DetailsScreen() {
    Text("Ecranul detaliilor")
}

Această abordare permite gestionarea ușoară a stivei de ecrane și a parametrilor de navigație.