OnBackPressed для каждого элемента в custom NavigatorView

Есть custom NavigatorView в котором я использую NavController. Вся проблема в том, что при замене Fragmenta я сразу задаю fragmentTransaction.addToBackStack(String.valueOf(FragmentRink3)); и при переходе в другой NavController при нажатии на OnBackPressed применяется на fragment из предыдущего NavController, где была произведена замена. Сложно объяснить, попытался как смог. Можно ли как-то сделать чтобы у каждого из нижнего навигационного меню был свой, не знаю, лист нажатий, по которому определялась последовательность переходов в фрагменты? Я знаю, что объяснил очень плохо, прикреплю gif, чтобы показать проблему наглядно.

введите сюда описание изображения

Как можете заметить, по нажатию на кнопку у нас заменился fragment, далее я перешёл в следующее меню и нажал OnBackPressed, и в этот момент fragment, который заменился в предыдущем меню, вернулся назад. Как это исправить?

Замену fragment-а реализую следующим образом:

btn_close.setOnClickListener(v ->
        {
            FragmentRink4 fragment = new FragmentRink4(); // you fragment
            FragmentManager fragmentManager = ((FragmentActivity) v.getContext()).getSupportFragmentManager(); // instantiate your view context
            FragmentTransaction fragmentTransaction = fragmentManager.beginTransaction();
            fragmentTransaction.replace(R.id.nav_controller_rink1, fragment);// your container and your fragment
            fragmentTransaction.addToBackStack(String.valueOf(FragmentRink3));
            fragmentTransaction.commit();
        });

Вот ссылка на проект.


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