Android 實現點擊兩次返回鍵退出

Android的很多app中,都有點擊一次返回鍵提示再次點擊退出app的功能。 
今天就看了下實現的方式,其實就是在相應的Activity中重寫了onKeyDown()方法。在onKeyDown()方法中撲捉到返回鍵(KeyEvent.KEYCODE_BACK)的點擊動作(KeyEvent.ACTION_DOWN),然後做出相應的提示信息和動作。 
當然,還需要一個時間參數,不然點擊完成等了很久再次點擊就會直接退出app了,這顯然是不合理的。時間間隔的大小一般而言1,2秒應該就行。

 

直接在主Activity寫入這個方法即可。

    // 用來計算返回鍵的點擊間隔時間
    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) {
                //彈出提示,可以有多種方式
                ToastUtil.showTextToast(getApplicationContext(), "再按一次退出程序");
                exitTime = System.currentTimeMillis();
            } else {
                finish();
            }
            return true;
        }
        return super.onKeyDown(keyCode, event);
    }

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章