Sobes.tech
Junior — Middle

Como pode implementar um mecanismo de troca de telas no Jetpack Compose?

sobes.tech IA

Resposta da IA

No Jetpack Compose, a navegação entre telas é geralmente implementada usando a biblioteca Navigation Compose, que gerencia a navegação entre diferentes Composable.

Passos principais:

  1. Criar um NavHost que contenha um NavController e defina o gráfico de navegação.
  2. Definir um composable para cada tela com uma rota (route) única.
  3. Usar o NavController para navegar entre telas através da chamada a navigate().

Exemplo:

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("Ir para a tela de detalhes")
    }
}

@Composable
fun DetailsScreen() {
    Text("Tela de detalhes")
}

Essa abordagem permite gerenciar facilmente a pilha de telas e os parâmetros de navegação.