[英]How to get the fragment from Backstack position
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. 上面的代码返回null,是否有更好的解决方案来利用片段在后堆栈中的位置来获取片段。
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. 选中此“ 如何从BackStack恢复片段”(如果存在) ,此答案将为您提供更多详细信息。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.