У меня есть 5 фрагментов в моей домашней деятельности. Первые 4 управляются с помощью нижнего меню навигации. 5-й фрагмент заменяется в главном контейнере по нажатию кнопки на панели инструментов активности. Я попытался обработать сценарий обратной печати, и он корректно работает с фрагментами нижнего меню навигации.
В одном фрагменте нижнего меню у меня есть панель просмотра с вкладками, и в ней есть 2 фрагмента.
ВЫПУСК
Теперь, если я перейду к этому фрагменту (фрагмент с вкладками), а затем перейду к 5-му фрагменту с панели инструментов. Теперь, когда я возвращаюсь с 5-го фрагмента, он возвращается к домашнему заданию с фрагментами с вкладками, выбранными в нижнем меню, но фрагменты панели просмотра остаются пустыми.
Это метод, который я использую для замены фрагмента
fun replaceFragment(fragment: Fragment, back: Boolean) {
supportFragmentManager.commit(true) {
replace(R.id.frame_container, fragment, fragment.javaClass.simpleName)
if (back)
addToBackStack(fragment.javaClass.simpleName)
}
}
Это код, которым я раздуваю 5-й фрагмент
val fragment = supportFragmentManager.findFragmentById(R.id.frame_container)
iv_back.visibility = View.VISIBLE
if (fragment !is ProfileFragment) {
val frag = ProfileFragment()
replaceFragment(frag, true)
updateTitle(frag)
}