除了重写onKeyDown方法以外
@Override
public boolean onKeyDown(int keyCode, KeyEvent event) {
if (keyCode == KeyEvent.KEYCODE_BACK) {//返回主界面而不是退出应用
Intent home = new Intent(Intent.ACTION_MAIN);
home.setFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);
home.addCategory(Intent.CATEGORY_HOME);
startActivity(home);
return true;
}
return super.onKeyDown(keyCode, event);
}
还可以重写onBackPressed
@Override
public void onBackPressed() {
if ((System.currentTimeMillis() - mExitTime) > 2000) {
Tools.showToast("再按一次退出程序");
mExitTime = System.currentTimeMillis();
} else {
Intent launcherIntent = new Intent(Intent.ACTION_MAIN);
launcherIntent.addCategory(Intent.CATEGORY_HOME);
startActivity(launcherIntent);
finish();
GoldLivingApp.exitApp();
}
}