Перемещение назад от фрагмента

#android

#Android

Вопрос:

Фрагмент InvoiceInfo

 public void move_to_another_fragment() {
    Fragment fragment = (Fragment) new ItemFragment();
    FragmentManager fragmentManager = getFragmentManager();
    getActivity().getActionBar().setTitle("Items");
    fragmentManager.beginTransaction()
        .replace(R.id.frame_container, fragment)
        .addToBackStack("invoiceinfo").commit();

}
  

В приведенной выше информации о счете-фактуре фрагмента я использую метод move_to_another_fragment для перехода в Fragment PurchaseOrder он работает нормально

Fragment PurchaseOrder

 FragmentManager fm = getActivity().getFragmentManager();
fm.beginTransaction().addToBackStack("purchase_order");
fm.popBackStack();
  

У этого Fragment PurchaseOrder есть кнопка, при нажатии на которую она должна вернуться на предыдущую страницу (фрагмент InvoiceInfo).
Это также работает, но когда я нажимаю кнопку в накладной, мне нужно перейти к PurchaseOrder.

 FragmentManager fm = getActivity().getFragmentManager();
fm.beginTransaction().addToBackStack("purchase_order");
fm.popBackStack();
  

Для этого я использовал приведенный выше код внутри фрагмента InvoiceInfo, но он не работает

Ответ №1:

Вы пробовали popBackStackImmediate()?

 FragmentManager fm = getActivity().getFragmentManager();
            fm.popBackStackImmediate();
  

Обновить

   FragmentManager fm = getActivity()
                .getSupportFragmentManager();
        fm.popBackStack ("invoiceinfo", FragmentManager.POP_BACK_STACK_INCLUSIVE);
  

Комментарии:

1. не работает. я на самом деле мне нужно, чтобы любой фрагмент находился в стеке, а не занимал верхний.

2. @SupunLakshan отредактировал мой ответ, проверьте, работает ли он для вас