Android後退事件的處理

來源:互聯網
上載者:User

標籤:android   style   color   sp   strong   on   div   cti   bs   

當我們想退出應用程式時,一般都會採用按物理按鍵(後退鍵)的做法,當使用者在按兩次後退鍵的時候就將應用程式退出,即銷毀當前的Activity();

重寫onBackPressed()方法即可:代碼如下:      private intclickCount=0;      @Override       public voidonBackPressed() {            // TODOAuto-generated method stub            //super.onBackPressed();                         if(clickCount< 1){                  Toast. makeText( this,"再按一次後退鍵退出應用程式!",Toast. LENGTH_SHORT).show();                  clickCount++;            } else{                  finish();            }      } 注意,需要將父類的onBackPressed()方法去掉,否則無論後面怎麼寫當按一次後退鍵的時候程式就會退出。但這種寫法有不好的地方,就是當使用者在不小心按下兩次後退鍵的時候都會退出,這樣就不好,沒有很好的使用者體驗。為此我們將程式改進,當使用者在按下第二次次退出鍵後如果和第一次之間的時間超過1s,我們就不將程式退出,視為無效的操作。 改進的代碼如下: private longlastClickTime= 0;   @Override       public voidonBackPressed() {            // TODOAuto-generated method stub            //super.onBackPressed();             if(lastClickTime<= 0){            Toast. makeText( this,"再按一次後退鍵退出應用程式!",Toast. LENGTH_SHORT).show();            lastClickTime= System. currentTimeMillis();      } else{             longcurrentClickTime = System. currentTimeMillis();             if(currentClickTime-lastClickTime< 1000){                  finish();            } else{                  Toast. makeText( this,"再按一次後退鍵退出應用程式!",Toast. LENGTH_SHORT).show();                  lastClickTime= currentClickTime;            }      }}

Android後退事件的處理

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.