#java #android #android-fragments
#java #Android #android-фрагменты
Вопрос:
У меня есть приложение, которое может запускать диалоговое окно, которое реализовано как DialogFragment. Этот диалог может сам запускать другой диалог в качестве своего дочернего, этот другой диалог также реализован с использованием DialogFragment.
Дочернее диалоговое окно отображается над родительским диалоговым окном правильно при запуске, однако после перерисовки действия (например, из-за изменения ориентации) родительское диалоговое окно отображается над дочерним диалоговым окном.
Итак, мой вопрос: как я могу предотвратить это изменение z-порядка диалогов при перерисовке activity или как я могу исправить это после перерисовки?
В основном так дочерний диалог создается родительским:
ChildDialog child = new ChildDialog();
child.show(getChildFragmentManager(), INVOKED_LOC_SEL_DIALOG_TAG);
Я не хочу скрывать родительский диалог при вызове дочернего диалога, поскольку диалог не отображается снова сразу после вызова show(), а вместо этого исчезает. Я был бы в порядке с этим решением, если бы мог подавить анимацию затухания в этом конкретном случае.
Запрос фокуса на любое представление дочернего диалогового окна или явный вызов show() в дочернем диалоговом окне, когда оно должно быть на переднем плане, мне не помогли.
Использование диспетчера родительских фрагментов также не уменьшило проблему.
Я использую androidx.fragment.app.DialogFragment из androidx.fragment: фрагмент: 1.2.5
Комментарии:
1. Какую версию фрагментов вы используете?
2. Обновлен вопрос — версия 1.2.5