我试图让我的应用在用户按下后退按钮时不关闭,并至少在一段时间内保持相同状态,就像主页按钮一样。我搜索过,有人建议这样做。
@Override
public void onBackPressed() {
super.onBackPressed();
this.moveTaskToBack(true);
}
但这没有帮助。我必须提到我使用此代码的活动不是 LAUNCHER
活动,在此活动之前,有一个启动画面。
我做错了什么?
答案 0 :(得分:1)
在您的活动中尝试我的代码。
@Override
public boolean onKeyDown(int keyCode, KeyEvent event) {
Log.d(TAG, "onKeyDown: ");
if(keyCode == KeyEvent.KEYCODE_BACK){
goHome();
return true;
}
return super.onKeyDown(keyCode, event);
}
private void goHome() {
Intent i = new Intent(Intent.ACTION_MAIN);
i.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
i.addCategory(Intent.CATEGORY_HOME);
startActivity(i);
}
按下键时启动主屏幕。
答案 1 :(得分:-1)
您不应在 onBackPressed()
中调用超级方法。应该是这样的
@Override
public void onBackPressed() {
moveTaskToBack(true);
}