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
  • 14,089
  • 18
  • 76
  • 114

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,162
  • 20
  • 85
  • 137