Sobes.tech
Junior — Middle

Come si può implementare un meccanismo di cambio schermo in Jetpack Compose?

sobes.tech AI

Risposta dell'AI

In Jetpack Compose, la navigazione tra schermate viene generalmente implementata utilizzando la libreria Navigation Compose, che gestisce la navigazione tra diversi Composable.

Passaggi principali:

  1. Creare un NavHost che contenga un NavController e definisca il grafo di navigazione.
  2. Definire un composable per ogni schermata con un percorso (route) unico.
  3. Utilizzare il NavController per navigare tra le schermate chiamando navigate().

Esempio:

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("Vai alla schermata dei dettagli")
    }
}

@Composable
fun DetailsScreen() {
    Text("Schermata dei dettagli")
}

Questo approccio permette di gestire facilmente lo stack di schermate e i parametri di navigazione.