我在 MainActivity 中得到了一些可以从 Navigation Drawer 中选择的 fragment 。现在,只要用户按下配置文件按钮,它就会跳转到 UserProfile Fragment。如果按下主页按钮,它将弹出最后一个 fragment 。由于我已经为每个 fragment 分配了一个特定的后台堆栈名称,即 .addToBackStack("abc")
,我如何使用 popBackStack()
检查最后一个 fragment 是什么方法?
最佳答案
获取最后一个 fragment :
FragmentManager fm = getSupportFragmentManager();
int lastFragEntry = fm.getBackStackEntryCount()-1;
String lastFragTag = fm.getBackStackEntryAt(lastFragEntry).getName();
Log.i("Last Fragment Tag->", lastFragTag);
注意:如果您想获取最后一个 fragment 的名称/标签,您还必须在 fragment 交易期间使用相同的标签 :
ft.replace(android.R.id.container, fragment, "abc");
ft.addToBackStack("abc");
希望这对您有所帮助。
关于java - PopBackStack 前一个最后一个 fragment 并检查它是哪个 fragment ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43032948/