Este guia demonstra como criar o ícone de navegação em um app principal bar executar ações de navegação.
Exemplo
O snippet a seguir é um exemplo mínimo de como implementar um aplicativo principal com um ícone de navegação funcional. Nesse caso, o ícone leva o usuário para o destino anterior no aplicativo:
@Composable fun TopBarNavigationExample( navigateBack: () -> Unit, ) { Scaffold( topBar = { CenterAlignedTopAppBar( title = { Text( "Navigation example", ) }, navigationIcon = { IconButton(onClick = navigateBack) { Icon( imageVector = Icons.AutoMirrored.Filled.ArrowBack, contentDescription = "Localized description" ) } }, ) }, ) { innerPadding -> Text( "Click the back button to pop from the back stack.", modifier = Modifier.padding(innerPadding), ) } }
Pontos principais sobre o código
Observe o seguinte neste exemplo:
- O elemento combinável
TopBarNavigationExample
define um parâmetronavigateBack
. do tipo() -> Unit
. - Ela transmite
navigateBack
ao parâmetronavigationIcon
doCenterAlignedTopAppBar
Assim, sempre que o usuário clicar no ícone de navegação na parte superior do aplicativo,
chama navigateBack()
.
Transmitir uma função
Este exemplo usa uma seta para trás como ícone. Assim, o argumento para
navigateBack()
precisa levar o usuário ao destino anterior.
Para isso, transmita uma chamada a TopBarNavigationExample
para
NavController.popBackStack()
. Você faz isso quando cria
gráfico de navegação. Exemplo:
NavHost(navController, startDestination = "home") {
composable("topBarNavigationExample") {
TopBarNavigationExample{ navController.popBackStack() }
}
// Other destinations...
Outros recursos
Para mais informações sobre como implementar a navegação no seu app, consulte a seguinte série de guias:
- Navegação com o Compose
- Criar um NavController
- Projetar o gráfico de navegação
- Navegar até um elemento combinável