Android按返回鍵退出程序


既然想實現 按兩次返回鍵 退出程序

有兩個關鍵詞

一個是 “返回鍵”,再一個是“退出程序”

1)先說“退出”

退出相信大家都會

finish();

System.exit(0);

為了確保不出現問題,兩種退出都寫上。

2)再來說說“返回鍵”

需要獲得硬件上的按鍵響應

onKeyDown(int keyCode,KeyEvent event)

然后分別作判斷 

keyCode是否為返回鍵,event是否為按下


3)完成這些之后,再做一個“兩次”的判斷

當然可以 int 一個 i 然后做 i++ 的操作

但是這里用的時間間隔做判斷條件

每次按下按鍵,調用System.currentTimeMillis()獲取當前時間毫秒數

做差,判斷是否大於一個給定的(2000)毫秒數


廢話不多說,代碼如下

[java] view plaincopy
private long exitTime = 0;  
  
@Override  
    public boolean onKeyDown(int keyCode, KeyEvent event) {  
        if (keyCode == KeyEvent.KEYCODE_BACK  
                && event.getAction() == KeyEvent.ACTION_DOWN) {  
  
            if ((System.currentTimeMillis() - exitTime) > 2000) {  
                Toast.makeText(getApplicationContext(), "再按一次退出程序",  
                        Toast.LENGTH_SHORT).show();  
                exitTime = System.currentTimeMillis();  
            } else {  
                finish();  
                System.exit(0);  
            }  
            return true;  
        }  
        return super.onKeyDown(keyCode, event);  
    }   

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM