1
    for(int entry = 0; entry < mFragmentManager.getBackStackEntryCount(); entry++){
       Fragment fragment=  mFragmentManager.findFragmentById(mFragmentManager.getBackStackEntryAt(entry).getId());
        Log.i(TAG, "Found fragment: " + String.valueOf(fragment.getClass().getSimpleName()));
    }

The above code returns null, is there any better solution to get the fragment using its position in backstack.

Sai
  • 15,188
  • 20
  • 81
  • 121

1 Answers1

1

To get the latest fragment in backstack,

FragmentManager.BackStackEntry backEntry=getFragmentManager().getBackStackEntryAt(getActivity().getFragmentManager().getBackStackEntryCount()-1);
    String str=backEntry.getName();
    Fragment fragment=getFragmentManager().findFragmentByTag(str);

Check this How to resume Fragment from BackStack if exists and this Answer will give you more detail.

Community
  • 1
  • 1
Amit Vaghela
  • 22,772
  • 22
  • 86
  • 142