Android NavigationUI с несколькими стеками: как сохранить состояние корней раздела? ⇐ Android
Android NavigationUI с несколькими стеками: как сохранить состояние корней раздела?
Я создал работающую многостековую реализацию NavigationUI с 5 разделами, каждый из которых имеет свой собственный стек. Оставшаяся проблема заключается в том, что для каждого корневого фрагмента раздела onSaveInstanceState не вызывается при переходе к другому разделу. Он вызывается для каждого второго фрагмента в заднем стеке каждого раздела.
Я использую этот код для навигации между разделами:
NavOptions navOptions = новый NavOptions.Builder() .setLaunchSingleTop(истина) .setRestoreState(истина) .setPopUpTo(currentDestination, true, true) .строить(); NavigationController.navigate(targetDestination, null, navOptions); Если я добавлю «фиктивный» фрагмент в качестве корня для каждого раздела, реальный корень получит вызов onSaveInstanceState, но это потребует всевозможных хаков с обратной навигацией.
Я создал работающую многостековую реализацию NavigationUI с 5 разделами, каждый из которых имеет свой собственный стек. Оставшаяся проблема заключается в том, что для каждого корневого фрагмента раздела onSaveInstanceState не вызывается при переходе к другому разделу. Он вызывается для каждого второго фрагмента в заднем стеке каждого раздела.
Я использую этот код для навигации между разделами:
NavOptions navOptions = новый NavOptions.Builder() .setLaunchSingleTop(истина) .setRestoreState(истина) .setPopUpTo(currentDestination, true, true) .строить(); NavigationController.navigate(targetDestination, null, navOptions); Если я добавлю «фиктивный» фрагмент в качестве корня для каждого раздела, реальный корень получит вызов onSaveInstanceState, но это потребует всевозможных хаков с обратной навигацией.
-
- Похожие темы
- Ответы
- Просмотры
- Последнее сообщение