在实际应用中,很可能我们希望自己的app在按下返回键的时候并不退出,而是像按home键一样仅仅返回桌面,而程序仍然在后台运行着。要怎么实现这个效果呢?很简单,只需要重写一下onBackPressed方法就可以了。如下所示:
public void onBackPressed() {
Intent setIntent = new Intent(Intent.ACTION_MAIN);
setIntent.addCategory(Intent.CATEGORY_HOME);
setIntent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
startActivity(setIntent);
}
然后重写
@Override
public boolean onKeyDown(int keyCode, KeyEvent event) {
//当按下键盘上返回按钮,给出退出对话框
if (keyCode == KeyEvent.KEYCODE_BACK) {
// System.exit(0);
//直接退出程序
/*Intent setIntent = new Intent(Intent.ACTION_MAIN);
setIntent.addCategory(Intent.CATEGORY_HOME);
setIntent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
startActivity(setIntent);
*/
onBackPressed();
//不退出程序仅仅返回桌面
return false;
} else {
return super.onKeyDown(keyCode, event);
}
}