android - 为什么我的返回堆栈条目计数始终为零?

标签 android

我正在这样添加我的 fragment :

  FragmentManager fm = getFragmentManager();
    fm.beginTransaction()
            .add(R.id.container, fragment, "SettingsActivity")
            .addToBackStack("SettingsActivity")
            .commit();

现在,当我按下后退按钮时,程序会出现在我覆盖的 onBackPress 中:

@Override
public void onBackPressed() {
    super.onBackPressed();
    Log.d(TAG, "OnBackPressed");
    if (getFragmentManager().getBackStackEntryCount() > 0) {
        Log.d(TAG, "Got entry.");
    }
    else {
        Log.d(TAG,"NO entry");
        super.onBackPressed();
    }

我总是得到结果 0。我从来没有进入 Got Entry 部分。

我添加的 fragment 有误吗?

最佳答案

去掉第一个

super.onBackPressed();

这将完成当前 Activity 。

关于android - 为什么我的返回堆栈条目计数始终为零?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24928611/

相关文章:

java - Android Libgdx - 无法保存在文件中

java - Volley 响应时间

android - 某些设备上的 Unity 2D,所有图像都变成粉红色

android - 如何获取此 git 脚本制作的补丁列表?

android - 无法使用 ADT 版本 20 创建新项目

Android:媒体播放器警告 (1,44)

javascript - 使用 Phonegap 的 Android 设备视频

android - Android 中 GMT 和 UTC 的区别

android - 我可以将 Android Studio 的 .gradle 文件夹移动到其他磁盘吗?

android - 无法解析 com.android.tools.build.gradle :3. 0.1