iT邦幫忙

第 12 屆 iThome 鐵人賽

DAY 26
0

現在有許多APP非常人性化的會為使用者著想,
雙擊關閉程式就是怕使用者不小心按到返回建就退出APP了,
今天要分享的就是利用目前時間來判斷的雙擊關閉程式,
例如我設定2秒,
APP就會判斷使用者是否在2秒內連續按下兩下返回鍵,
進而關閉APP退出。


結果預覽:

雙擊關閉程式


MainActivity.java

    // Step01-設定目前時間變數(使用long是因為System.currentTimeMillis()方法的型態是long):
    private long timeSave = 0;
    @Override
    public boolean onKeyDown(int keyCode, KeyEvent event){
        // Step02-判斷是否按下按鍵,並且確認該按鍵是否為返回鍵:
        if(keyCode == KeyEvent.KEYCODE_BACK && event.getAction() == KeyEvent.ACTION_DOWN){
            // Step03-判斷目前時間與上次按下返回鍵時間是否間隔2000毫秒(2秒):
            if((System.currentTimeMillis()-timeSave) > 2000){
                Toast.makeText(this, "再按一次退出!!", Toast.LENGTH_SHORT).show();
                // Step04-紀錄第一次案返回鍵的時間:
                timeSave = System.currentTimeMillis();
            }
            else {
                // Step05-結束Activity與關閉APP:
                finish();
                System.exit(0);
            }
            return true;
        }
        return super.onKeyDown(keyCode, event);
    }

上一篇
[Android Studio菜鳥的學習分享]Fragment應用(下)-BottomNavigationView選單 + ViewPaper
下一篇
[Android Studio菜鳥的學習分享]SQLite應用
系列文
Andriod Studio 菜鳥的學習分享30
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言