Открытие BottomSheetDialogFragment-а окрашивает SystemNavigationBar и текст StatusBar-a в неподобающий цвет

Проблема: в приложении есть разные темы, которые можно менять динамически. Но, каких бы цветов ни был бэкграунд активити в данный момент, открытие любого BottomSheetDialogFragment-а делает цвет текста в statusBare черным (в т.ч. если вон статусбара тоже темный), а systemBottomNavBar делается светлым с темными значками. При закрытии БоттомШита цвета возвращаются к нормальной жизни.

Я пробовал в onCreateDialog до return вызывать такой метод:

    fun setSystemBarsColors(isNight: Boolean) {

    // activity?.window?.clearFlags(WindowManager.LayoutParams.FLAG_TRANSLUCENT_STATUS)
    // activity?.window?.addFlags(WindowManager.LayoutParams.FLAG_DRAWS_SYSTEM_BAR_BACKGROUNDS)
        when (isNight) {
            true -> {
                activity?.window?.statusBarColor = ContextCompat.getColor(requireContext(), R.color.nightBgDarkGray)
                activity?.window?.navigationBarColor = ContextCompat.getColor(requireContext(), R.color.nightBgDarkGray)

                activity?.window?.decorView?.systemUiVisibility = View.SYSTEM_UI_FLAG_LAYOUT_STABLE or
                        View.SYSTEM_UI_FLAG_LAYOUT_HIDE_NAVIGATION

            }
            else -> {
                activity?.window?.statusBarColor = ContextCompat.getColor(requireContext(), R.color.transparent)
                activity?.window?.navigationBarColor = ContextCompat.getColor(requireContext(), R.color.transparent)

                activity?.window?.decorView?.systemUiVisibility = View.SYSTEM_UI_FLAG_LAYOUT_STABLE or
                        View.SYSTEM_UI_FLAG_LAYOUT_HIDE_NAVIGATION or
                        View.SYSTEM_UI_FLAG_LIGHT_STATUS_BAR or View.SYSTEM_UI_FLAG_LIGHT_NAVIGATION_BAR
            }
        }
    }

Не помогает. Может кто знает в чем причина перекраски и как фиксить подскажите пожалуйста. Спасибо


Ответы (0 шт):