天天看點

點選兩次back退出app

 import

android.app.Activity;

import

android.os.Bundle;

import

android.os.Handler;

import

android.os.Message;

import

android.util.Log;

import

android.view.KeyEvent;

import

android.widget.Toast;

public

class

MainActivity

extends

Activity {

private

static

final

String TAG = MainActivity_Exit.

class

.getSimpleName();

// 定義一個變量,來辨別是否退出

private

static

boolean

isExit =

false

;

private

static

Handler mHandler =

new

Handler() {

@Override

public

void

handleMessage(Message msg) {

super

.handleMessage(msg);

isExit =

false

;

}

};

@Override

protected

void

onCreate(Bundle savedInstanceState) {

super

.onCreate(savedInstanceState);

setContentView(R.layout.activity_main);

}

@Override

public

boolean

onKeyDown(

int

keyCode, KeyEvent event) {

if

(keyCode == KeyEvent.KEYCODE_BACK) {

exit();

return

true

;

}

return

super

.onKeyDown(keyCode, event);

}

private

void

exit() {

if

(!isExit) {

isExit =

true

;

Toast.makeText(getApplicationContext(),

"再按一次back鍵退出app"

,

Toast.LENGTH_SHORT).show();

// 利用handler延遲發送更改狀态資訊

mHandler.sendEmptyMessageDelayed(

,

2000

);

}

else

{

Log.e(TAG,

"exit application"

);

this

.finish();

}

}

}