在我的应用程序中,我有 4 个 fragment ,如下所示 [A] [A-sub] [B] [B-sub] 当用户从 [A] 或 [B] 按下后退按钮时,它应该退出应用程序假设用户从 [A-sub] 或 [B-sub] 按下后退按钮,它应该将应用程序重定向到 [A] 或 [B]
希望你能解决我的问题
我已经在我的主要 fragment Activity 中尝试了以下操作,但我知道它是退出应用程序的唯一解决方案
private boolean _doubleBackToExitPressedOnce = false;
@Override
public void onBackPressed() {
System.out.println("onBackPressed--");
if (_doubleBackToExitPressedOnce) {
super.onBackPressed();
return;
}
this._doubleBackToExitPressedOnce = true;
Toast.makeText(this, "Press again to quit", Toast.LENGTH_SHORT).show();
new Handler().postDelayed(new Runnable() {
@Override
public void run() {
_doubleBackToExitPressedOnce = false;
}
}, 2000);
}
最佳答案
做这样的事情,覆盖 onBackpessed()
@Override
public void onBackPressed()
{
if (page == SUB_FRG)
super.onBackPressed();//Normal Back
else
//Finish activity holding fragment
}
当您将 fragment 替换为子 fragment 时,请使用 addToBackStack(null),如下所示
FragmentManager myProfilefragmentManager = getSupportFragmentManager();
FragmentTransaction myProfilefragmentTransaction = myProfilefragmentManager.beginTransaction();
myProfilefragmentTransaction.replace(R.id.article_fragment, myProfileFragment).addToBackStack(null).commit();
关于android - 在 fragment android 上按下后退按钮?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21131525/