Анимация выхода DialogFragment, показывающая пустой белый экран

У меня есть DialogFragment с этим кодом для анимации при выходе:

      override fun dismiss() {
       dismissListener?.invoke()
       exitAnimation?.let {
            val animation = AnimationUtils.loadAnimation(requireContext(), it)
            animation.setAnimationListener(object : AnimationAdapter {

                override fun onAnimationEnd(animation: Animation?) {
                    callDismiss()
                }

            })
            view?.startAnimation(animation)
        } ?: callDismiss()
    }

    private fun callDismiss() {
        super.dismiss()
    }

exitAnimation по умолчанию использует анимацию выдвижения.

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

Я не знаю, потому что у меня есть что-то вроде:

ABCD, где D — это DialogFragment, но ABC является частью NavigationController/NavigatorFragment, а D не является частью навигационного графа и запускается из FragmentTranscation из C.parentFragmentManager

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

Я хочу, чтобы фоновый фрагмент был виден, как при использовании того же диспетчера фрагментов.

0 ответов