Destinos e Rotas Composable
Registre cada tela como uma rota.
Destinos e Rotas Composable é uma aula grátis de Jetpack Compose Academy no CoddyKit. Esta é a aula 2 de 4. Você pode ler a aula completa abaixo gratuitamente — depois pratica ao vivo no navegador com um editor de código integrado e um tutor de IA 24/7. Faz parte do caminho de aprendizado de Jetpack Compose Academy, e seu progresso é sincronizado entre a web e o app CoddyKit. O curso de Jetpack Compose Academy inclui 4 aulas no total.
Partes desta aula ainda não foram traduzidas e aparecem em inglês.
Screens as Destinations
Every screen in your graph is a destination. You register one with the composable builder inside the NavHost, naming it with a route.
composable("home") { HomeScreen() }What a Route Really Is
A route is a unique string key for a destination. Compose matches the string you navigate to against the routes you declared.
Keep Routes in Constants
Typos in raw strings cause silent failures. Store each route as a constant so the compiler catches mistakes for you.
object Routes {
const val HOME = "home"
const val SETTINGS = "settings"
}A Sealed Class of Screens
For larger apps, a sealed class groups all routes in one place. It makes adding screens safe and easy to discover.
sealed class Screen(val route: String) {
object Home : Screen("home")
object Settings : Screen("settings")
}Register Each Destination
List every screen with its own composable block. The lambda body is the UI shown when that route becomes active.
NavHost(navController, startDestination = Screen.Home.route) {
composable(Screen.Home.route) { HomeScreen() }
composable(Screen.Settings.route) { SettingsScreen() }
}Navigate to a Route
Use the same route string to move there. The NavController finds the matching destination and the NavHost renders it.
navController.navigate(Screen.Settings.route)Routes Must Be Unique
Two destinations cannot share a route. Each route is an address, and duplicate addresses make navigation ambiguous and unreliable.
Pass the Controller Down
Screens often trigger navigation, so hand each destination a way to navigate. A common pattern passes lambdas instead of the whole controller.
composable("home") {
HomeScreen(onOpenSettings = { navController.navigate("settings") })
}Keep Screens Decoupled
Passing lambdas instead of the NavController keeps screens testable and reusable. The screen says what happened, not how to navigate.
Routes Look Like URLs
Treat routes like little URLs. This style pays off later when you add arguments and deep links that open routes from outside the app.
Group Related Flows
As graphs grow, you can split screens into nested graphs with their own routes. This keeps a feature's destinations tidy and self-contained.
Quick Check
Why prefer constants or a sealed class for routes?
Recap
You learned that each screen is a destination with a unique route, and that constants or a sealed class keep those routes safe and organized. 🗂️
Aprenda Kotlin com um tutor de IA — grátis
Escreva e execute código real no seu navegador, obtenha ajuda instantânea de um tutor de IA 24/7 e continue de onde parou na web ou no app.
- Cursos
- 30
- Aulas
- 120
Perguntas Frequentes
A aula “Destinos e Rotas Composable” é grátis?
Sim — o texto completo de “Destinos e Rotas Composable” é grátis para ler aqui na web. Para praticá-la interativamente (um editor de código integrado e um tutor de IA 24/7) e desbloquear o restante do curso de Jetpack Compose Academy, atualize para CoddyKit PRO. O curso de Jetpack Compose Academy inclui 4 aulas no total.
O que vou aprender em “Destinos e Rotas Composable”?
Registre cada tela como uma rota. Você pratica Jetpack Compose Academy com código prático que executa diretamente no navegador, e um tutor de IA 24/7 responde suas dúvidas enquanto trabalha na aula.
Preciso ter experiência prévia para começar Jetpack Compose Academy?
Nenhuma experiência prévia é necessária. Jetpack Compose Academy no CoddyKit é estruturado para alunos iniciantes até avançados, então você pode começar aqui ou desde o início e aprender no seu ritmo. Esta é a aula 2 de 4.
Quanto tempo leva a aula “Destinos e Rotas Composable”?
A maioria das aulas CoddyKit leva cerca de 5–10 minutos. Cada uma é compacta e interativa, então você faz progresso constante e retoma exatamente de onde parou entre web e app.
Posso escrever e executar código nesta aula de Jetpack Compose Academy?
Sim. Cada aula de Jetpack Compose Academy inclui um editor de código integrado, então você escreve e executa código real direto no navegador e recebe feedback de IA instantaneamente — nenhuma configuração local necessária.
Todas as aulas deste curso
- NavController e NavHost
- Destinos e Rotas Composable
- Passando Argumentos entre Telas
- Pilha de Retorno e Links Profundos