我正在添加这样的片段:

  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部分。

我添加的片段不对吗?

最佳答案

删除第一个

super.onBackPressed();


这将完成当前活动。

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

10-12 04:00