Почему замененный фрагмент снова вернулся? - PullRequest
0 голосов
/ 02 апреля 2019

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

fun replaceFragment(resId : Int, fragment : Fragment){
    this.supportFragmentManager?.beginTransaction()?.replace(resId, fragment)?.addToBackStack(null)?.commit()
}

Так по моему CalcActivity:

  1. раздуваю CalculationFragment с replaceFragment(R.layout.frag_calc, CalculationFragment()) собрать данные и вычислить результат по первому фрагменту.
  2. Когда я получаю результат , я вызываю обратный вызов с CalculationFragment в моей Деятельности
  3. В этом обратном вызове (обратно CalcActivity) я replaceFragment(R.layout.frag_result, ResultFragment()) показывает мои результаты.

Пока это работает, НО всякий раз, когда я нажимаю обратно, он возвращается к CalculationFragment?!

Я собирался вернуться к MainActivity ..

MainActivity

+ -> CalcActivity

       +-> CalculationFragment
       +-> ResultFragment

Как я могу вернуться в MainActivity?

...