Адреса диалога,Место назначения диалога

В этом документе описывается, как использование пунктов назначения диалогов может внести уникальные соображения относительно того, как вам нужно управлять своим стеком.

Обзор

Одно или несколько пунктов назначения диалога могут существовать только в верхней части задней стопки. Это связано с тем, что когда пользователь переходит к месту назначения, которое не является местом назначения диалога, NavController автоматически извлекает все места назначения диалога из вершины стека. Это гарантирует, что текущий пункт назначения всегда будет полностью виден среди других пунктов назначения в заднем стеке.

Целями могут быть размещенные места назначения , места назначения действий или места назначения диалога .

Пример

Если задний стек состоит исключительно из размещенных пунктов назначения , которые заполняют узел навигации, а пользователь переходит к месту назначения диалога, то задний стек может выглядеть примерно так, как показано на рисунке 2:

задняя стопка с пунктом назначения диалога сверху
Рисунок 2. Задний стек с пунктом назначения диалога вверху.

Если затем пользователь переходит к другому пункту назначения диалога, он добавляется в начало стека, как показано на рисунке 3:

задний стек с двумя пунктами назначения диалога сверху
Рисунок 3. Задний стек с двумя пунктами назначения Dialog наверху.

Если затем пользователь переходит к неплавающему пункту назначения, все пункты назначения диалога сначала извлекаются из верхней части стека, прежде чем переходить к новому пункту назначения, как показано на рисунке 4:

пункты назначения диалога выскакивают и добавляется новый пункт назначения
Рис. 4. Пункты назначения Dialog отображаются и добавляется новый пункт назначения.