Android連續點擊兩次Back鍵退出程式

來源:互聯網
上載者:User

標籤:android   private   public   method   程式   

     思路1:記錄上次點擊的時間,與本次點擊的時間比較,當兩次時間間隔小於一定值時,退出,否則提示“再按一次退出程式”,同時更新上次點擊時間

     private long firstTime = 0;     @Override  public boolean onKeyUp(int keyCode, KeyEvent event) {         // TODO Auto-generated method stub         switch(keyCode)         {         case KeyEvent.KEYCODE_BACK:              long secondTime = System.currentTimeMillis();                if (secondTime - firstTime > 2000) {                                         //如果兩次按鍵時間間隔大於2秒,則不退出                   Toast.makeText(this, "再按一次退出程式", Toast.LENGTH_SHORT).show();                    firstTime = secondTime;//更新firstTime                   return true;                } else {                                                    //兩次按鍵小於2秒時,退出應用              System.exit(0);               }              break;         }       return super.onKeyUp(keyCode, event);     }

思路2:開線程延時處理

private int mBackKeyPressedTimes = 0;            @Override          public void onBackPressed() {                  if (mBackKeyPressedTimes == 0) {                          Toast.makeText(this, "再按一次退出程式 ", Toast.LENGTH_SHORT).show();                          mBackKeyPressedTimes = 1;                          new Thread() {                                  @Override                                  public void run() {                                          try {                                                  Thread.sleep(2000);                                          } catch (InterruptedException e) {                                                  e.printStackTrace();                                          } finally {                                                  mBackKeyPressedTimes = 0;                                          }                                  }                          }.start();                          return;                        else{                                 this.activity.finish();                              }                  }                  super.onBackPressed();          }

Android連續點擊兩次Back鍵退出程式

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在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.