Как после поворота экрана узнать какой фрагмент был последний в frameLayout?

У меня есть два фрагмента и FrameLayout, причем я делаю по нажатию на кнопку из первого фрагмента переход на второй. Мне нужно после поворота экрана узнать какой фрагмент был перед поворотом в FrameLayout и сделать replace его. Какой в данном случае будет лучший способ это реализовать?


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

Автор решения: Ilya Maximencko

В общем пока что решил так:

val GALLERY_KEY = "gallery is showing"
private var gallery = true
override fun onCreate(savedInstanceState: Bundle?) {
    super.onCreate(savedInstanceState)
    setContentView(R.layout.activity_main)
    gallery = savedInstanceState?.getBoolean(GALLERY_KEY) ?: true
    supportFragmentManager.beginTransaction()
        .replace(R.id.fragmentContainer, if (gallery) GalleryFragment() else URLsFragment())
        .commit()
}

override fun onSaveInstanceState(outState: Bundle) {
    super.onSaveInstanceState(outState)
    outState.putBoolean(GALLERY_KEY, supportFragmentManager.fragments[0] is GalleryFragment)
}
→ Ссылка