【问题标题】:PopBackStack previous last fragment and check which fragment it isPopBackStack 上一个最后一个片段并检查它是哪个片段
【发布时间】:2017-03-26 18:37:19
【问题描述】:
我在 MainActivity 中有一些可以从 Navigation Drawer 中选择的片段。现在,每当用户按下配置文件按钮时,它都会跳转到 UserProfile 片段。如果按下主页按钮,它将弹出最后一个片段。由于我已经为每个片段分配了一个特定的 backstack 名称,即.addToBackStack("abc"),我如何使用popBackStack() 方法检查最后一个片段是什么?
【问题讨论】:
标签:
java
android
android-fragments
fragment-backstack
【解决方案1】:
获取最后一个片段:
FragmentManager fm = getSupportFragmentManager();
int lastFragEntry = fm.getBackStackEntryCount()-1;
String lastFragTag = fm.getBackStackEntryAt(lastFragEntry).getName();
Log.i("Last Fragment Tag->", lastFragTag);
注意:如果要获取最后一个片段的名称/标签,您还必须在片段事务期间使用相同的标签 :
ft.replace(android.R.id.container, fragment, "abc");
ft.addToBackStack("abc");
希望这会有所帮助。