Androidは2回キーを押してアプリケーションを終了します
910 ワード
この問題について、私は以前ネット上で他の人の方法を参考にしていませんでしたが、自分の考えはいつもぼんやりしていました.以前はintフラグを0と1に設定していました.押すときは0かどうか、いいえ、1を加えて、はい、退出します.この低級な間違いは本当に恥ずかしい.その後、何度か長い時間間隔を置いても退出します.後でタイマーを使って、時間を設定したいです.効率が低い.実はjavaには現在の時間を直接取得するAPIがあり、前回の時間を差し引くと間隔が取れるのではないでしょうか.
コード:
ここのSysApplication.getInstance().exit();自分でカプセル化したクラスです.みんなが使っている間に自分の代わりにします.
コード:
private long mExitTime ; //
//
@Override
public boolean onKeyDown(int keyCode, KeyEvent event) {
if(keyCode == KeyEvent.KEYCODE_BACK && event.getRepeatCount() == 0){
if ((System.currentTimeMillis() - mExitTime) > 2000 ) {
Toast.makeText(this, " ", Toast.LENGTH_SHORT).show();
mExitTime = System.currentTimeMillis();
}else{
SysApplication.getInstance().exit();
}
return true;
}
return super.onKeyDown(keyCode, event);
}
ここのSysApplication.getInstance().exit();自分でカプセル化したクラスです.みんなが使っている間に自分の代わりにします.