📊 Slides: Cap 11 — Navegação entre Fases (Menus)
Resumo visual da aula, em blocos — use como roteiro de revisão ou apresentação.
🟦 Slide 1: Objetivo da Aula
- Sair da tela única e criar um fluxo de telas.
- Usar Navigation Compose para o jogador transitar entre Menu, Pokedex e Arena.
🟦 Slide 2: O Cenário Prático
Seu app tem Menu, Pokedex e Arena — mas elas estão desconectadas. Crie o Navegador do Jogo: rotas que levam o jogador entre as telas, com o botão “Voltar” funcionando corretamente.
🟦 Slide 3: Dicionário do Programador
| Termo | Significado |
|---|---|
| NavController | O “Guia de Viagem” — comandado para mudar de tela |
| NavHost | O “palco” onde as telas (cenários) são trocadas |
| Rota (Route) | O “nome de batismo” de cada tela ("menu", "arena"…) |
📦 Dependência Gradle: implementation 'androidx.navigation:navigation-compose:2.7.7'
🟦 Slide 4: O Mapa das Telas
graph TD
A["Menu Principal"] -->|navController.navigate| B["Tela da Pokedex"]
B -->|navController.popBackStack| A
A -->|navController.navigate| C["Arena de Batalha"]
🟦 Slide 5: Exemplo — O Navegador do Jogo
@Composable
fun NavegadorDoJogo() {
val navController = rememberNavController()
NavHost(navController = navController, startDestination = "menu") {
composable("menu") {
Button(onClick = { navController.navigate("pokedex") }) {
Text("Ir para Pokedex")
}
}
composable("pokedex") {
Column {
Text("Sua Pokedex")
Button(onClick = { navController.popBackStack() }) {
Text("Voltar")
}
}
}
}
}
🟦 Slide 6: Prática e Próximos Passos
- 🛠️ Prática 1: rotas
"inicio","arena","vitoria"noNavHost. - 🛠️ Prática 2: botões “Finalizar Batalha” e “Voltar ao Menu” (
popBackStack). - 💪 Exercício extra: botão “Menu Principal” com
popUpTo. - 🧠 Quiz: teste seus conhecimentos.
- ➡️ Próximo capítulo: Cap 12 — Arquitetura de Jogo (MVVM).