java - PopBackStack 前一个最后一个 fragment 并检查它是哪个 fragment

标签 java android android-fragments fragment-backstack

我在 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/

相关文章:

java - 如何将整数元素添加到泛型通配符的ArrayList中?

java - 以下 java 代码给出输出 1 2 3 。代码是如何执行的?

android - Android:如何将图库中的图像加载到OpenCv Mat变量中?

android - 我怎样才能 "poke"一个遵守观察者模式的 android 应用程序?

android - TabFragment 中的 ViewPager 未再次加载

android - 如何正确处理嵌套 fragment ?

java - 添加 String Literals 和 String 对象之间的区别

java - 非常大的选择语句期间的 JDBC 错误 "Lost Connection"

android - VideoView getDrawingCache 返回黑色

android - 从 Android Fragment 中的图库中选择图片