Androidは優雅にアプリを終了
3115 ワード
オリジナルの文章は、転載があれば、出典を明記してください.http://blog.csdn.net/myth13141314/article/details/64920258
主にActivityの起動モードが使われていて、簡単で効果的で、2ステップしかかかりません. MainActivityの起動モードをSingleTask に設定出口をMainActivity に置く
げんりぶんせき
Activityの4種類の起動モード standard:標準モードで、起動するたびにインスタンス が作成されます. singleTop:スタックトップ多重モード、スタックトップでonNewIntent多重を呼び出す場合はonResume()から開始し、そうでない場合は新しいインスタンス を作成します. singleTask:スタック内多重化、このタイプのActivityを使用するとスタックトップ多重化に移行し、onResume()から開始し、その上にあるすべてのActivityをスタック から除去する singleInstance:singleTaskのプロパティを除いて、システムはActivityにスタック を単独で作成します.
Appを開くのは一般的に起動ページを経て、finish起動ページはMainActivityにジャンプして、それから一連のジャンプを経て、その間に数の不定なActivityが発生して、あるものは破棄されて、あるものはスタックの中に残っていますが、スタックの底は永遠に私たちのMainActivityです.MainActivityの起動モードをSingleTaskとし、終了した出口をMainActivityに設定します.そうすると、ユーザーがAppを終了するときは、必ずMainActivityに戻ります.このときスタックの中にはMainActivityしかなく、直接finishで終了すればいいです.
最後にダブルクリックでAppを終了する実装を添付します
私の公衆番号に注目して、私と一緒に毎日少し進歩します!
主にActivityの起動モードが使われていて、簡単で効果的で、2ステップしかかかりません.
げんりぶんせき
Activityの4種類の起動モード
Appを開くのは一般的に起動ページを経て、finish起動ページはMainActivityにジャンプして、それから一連のジャンプを経て、その間に数の不定なActivityが発生して、あるものは破棄されて、あるものはスタックの中に残っていますが、スタックの底は永遠に私たちのMainActivityです.MainActivityの起動モードをSingleTaskとし、終了した出口をMainActivityに設定します.そうすると、ユーザーがAppを終了するときは、必ずMainActivityに戻ります.このときスタックの中にはMainActivityしかなく、直接finishで終了すればいいです.
最後にダブルクリックでAppを終了する実装を添付します
//
private static boolean isExit = false;
@Override
public boolean onKeyUp(int keyCode, KeyEvent event) {
if(keyCode==KeyEvent.KEYCODE_BACK){
if(!isExit){
isExit = true;
Toast.makeText(this, " ", Toast.LENGTH_SHORT).show();
new CountDownTimer(2200,2200){
@Override
public void onTick(long millisUntilFinished) {
}
@Override
public void onFinish() {
isExit = false;
}
}.start();
}else{
finish();
}
return false;
}
return super.onKeyUp(keyCode, event);
}
私の公衆番号に注目して、私と一緒に毎日少し進歩します!