PopBackStack上一个最后一个片段并检查它是哪个片段

时间:2017-03-26 18:37:20

标签: java android android-fragments fragment-backstack

我在MainActivity中有一些片段,可以从导航抽屉中选择。现在,每当用户按下个人资料按钮时,它都会跳转到UserProfile Fragment。如果按下主页按钮,它将弹出最后一个片段。由于我已经为每个片段分配了一个特定的后台堆栈名称,即.addToBackStack("abc"),如何使用popBackStack()方法检查最后一个片段是什么?

1 个答案:

答案 0 :(得分:3)

获取最后一个片段:

FragmentManager fm = getSupportFragmentManager();
int lastFragEntry = fm.getBackStackEntryCount()-1;
String lastFragTag = fm.getBackStackEntryAt(lastFragEntry).getName();

Log.i("Last Fragment Tag->", lastFragTag);

NB:如果您想获取最后一个片段的名称/标签,您还必须在片段交易期间使用相同的标记

ft.replace(android.R.id.container, fragment, "abc");
ft.addToBackStack("abc");

希望这有帮助。

相关问题