private long mPressedTime = 0;
@Override
public void onBackPressed() {
//獲取第一次按鍵時間
long mNowTime = System.currentTimeMillis();
//比較兩次按鍵時間差
if((mNowTime - mPressedTime) > 2000){
Toast.makeText(this, "再按一次退出程序", Toast.LENGTH_SHORT).show();
mPressedTime = mNowTime;
}
else{//退出程序
this.finish();
System.exit(0);
}
}
其實(shí)還有另一種利用線程延時實(shí)現(xiàn)的方法柴信,但是個人覺得從代碼的易讀性和穩(wěn)定性上都是這種利用時間差的方式更好;秉承著好的技術(shù)多寫宽气,麻煩的技術(shù)少看的原則我就不推薦了随常,大家拿著這個直接復(fù)制粘貼使用就好了。