Este documento descreve como o uso de destinos de caixa de diálogo pode apresentar considerações únicas sobre como é preciso gerenciar a backstack.
Visão geral
Um ou mais destinos de caixas de diálogo só podem existir na parte de cima da backstack.
Isso ocorre porque, quando o usuário navega para um destino que não é uma caixa de
diálogo, o NavController
retira automaticamente todos os destinos de caixa de diálogo
da parte superior da pilha. Isso garante que o destino atual fique sempre totalmente
visível sobre outros destinos na backstack.
Os destinos podem ser destinos hospedados, destinos de atividades ou destinos de caixas de diálogo.
Exemplo
Se a backstack consiste apenas em destinos hospedados que preenchem o host de navegação e o usuário navega até um destino da caixa de diálogo, ela pode ficar parecida com a mostrada na Figura 2:
![uma backstack com um destino de caixa de diálogo na parte de cima](https://developer.android.com/static/images/guide/navigation/backstack-1.png?authuser=9&hl=pt)
Se o usuário navegar para outro destino de caixa de diálogo, ele será adicionado ao topo da backstack, conforme mostrado na Figura 3:
![uma backstack com dois destinos de caixa de diálogo na parte de cima](https://developer.android.com/static/images/guide/navigation/backstack-2.png?authuser=9&hl=pt)
Dialog
na parte de cima.Se o usuário navegar até um destino não flutuante, todos os destinos de caixa de diálogo vão ser mostrados do topo da backstack antes de navegarem para o novo destino, conforme mostrado na Figura 4:
![os destinos de caixa de diálogo são destacados, e o novo destino
é adicionado](https://developer.android.com/static/images/guide/navigation/backstack-3.png?authuser=9&hl=pt)
Dialog
são destacados, e o novo destino é adicionado.