Android中的“再按一次返回鍵退出程序”實現 (轉) 按返回鍵退出程序時進行提醒


原文地址:

https://blog.csdn.net/xichenguan/article/details/47030303

 

最近在研究   Android  編程方面的東西, 有了以下發現,  該部分代碼直接放在APP的主界面的Activity中,親自驗證可行,感覺還不錯。

 

其中,  KeyEvent.KEYCODE_BACK   是指用戶按下返回鍵,

KeyEvent.ACTION_DOWN  是指按下鍵的事件。

 

該部分代碼意思就是

第一次按鍵返回的時候  提示   再按一次退出程序。

每一次按鍵返回的時候 和 上一次按鍵返回的時間  在2000ms 以外則進行提示,否則就退出。

連續兩次按下返回鍵的動作    ,也就是在2000ms之內,你連續兩次按下返回鍵,則退出,否則是提示。

 

 

以下是轉載內容:

============================================================

 

用戶退出應用前給出一個提示是很有必要的,因為可能是用戶並不真的想退出,而只是一不小心按下了返回鍵,大部分應用的做法是在應用退出去前給出一個Dialog,我覺得這樣不太友好,用戶還得移動手指去按dialog中的按鈕。個人覺得“再按一次返回鍵退出程序”是best practice,實現也很簡單,直接上代碼:

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