android - 如何使用 Fragment 处理 backPress

标签 android android-fragments

我有带有抽屉导航的 fragment Activity 。单击抽屉导航项目后,它会打开 fragment 1、 fragment 2、 fragment 3。然后在 fragment 1 中的按钮单击事件后打开新的 fragment 4。

我想处理返回键按下事件,如何在 Fragment 4 上执行此操作?在 Fragment 4 中单击返回键后,我想返回 Fragment 1。

enter image description here

最佳答案

将 fragment 添加到 BackStack。在 commit() 事务之前,使用 addToBackStack() 方法 即

 addToBackStack("Some String").commit();

并在 onBackPressed() 中

@Override 
public void onBackPressed() { 
    if (getSupportFragmentManager().getBackStackEntryCount() > 0) {
        getSupportFragmentManager().popBackStack(); 
    } else { 
        this.finish(); 
    }
}

关于android - 如何使用 Fragment 处理 backPress,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27717127/

相关文章:

android - 编辑框架类实现 Android 以实现向后兼容性

android - 如何对对话执行触觉反馈?

android - 如何删除 EditText 指示器下方的下划线?

java - 如何根据实际方向使用不同的 fragment ?

android - 重新加载时刷新 fragment

java - 从 Activity 中搜索 fragment ID

Android:SurfaceView 正在阻止抽屉导航

android - 有没有办法在 Android 中获取 SD 卡的大小?

android - 每次方向改变后都会重新创建 fragment ,无法恢复状态

java - 在 EditText 和键盘之间添加边距