Android退出事件處理


為了防止用戶誤點退出鍵,很多應用都需要按兩次退出鍵才會退出程序。下面介紹兩種方法實現:

按照兩次退出鍵的時間判斷:

private long lastClickTime = 0;

    @Override
    public void onBackPressed() {
        if (lastClickTime <= 0) {
            Toast.makeText(this, "再按一次后退鍵退出應用", Toast.LENGTH_SHORT).show();
            lastClickTime = System.currentTimeMillis();
        } else {
            long currentClickTime = System.currentTimeMillis();
            if (currentClickTime - lastClickTime < 2000){
                finish();
            } else {
                Toast.makeText(this, "再按一次后退鍵退出應用", Toast.LENGTH_SHORT).show();
                lastClickTime = System.currentTimeMillis();
            }
        }

按照是否連續點擊退出鍵判斷:

  protected int mFinishCount = 0;

  @Override
    public boolean dispatchTouchEvent(MotionEvent ev) {
        mFinishCount = 0;
        return super.dispatchTouchEvent(ev);
    }

    @Override
    public void finish() {
        mFinishCount++;
        if (mFinishCount == 1) {
            Toast.makeText(this, "再按一次退出!", Toast.LENGTH_LONG).show();
        } else if (mFinishCount == 2) {
            super.finish();
        }
    }

 


免責聲明!

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



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