欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

Android實現(xiàn)點擊兩次BACK鍵退出應用

 更新時間:2016年09月21日 17:08:43   投稿:lijiao  
這篇文章主要為大家詳細介紹了Android實現(xiàn)點擊兩次BACK鍵退出應用的相關資料,具有一定的參考價值,感興趣的小伙伴們可以參考一下

思路:Android中捕獲用戶按鍵是在onKeyDown方法中,只需要判斷用戶按鍵是否是KEYCODE_BACK即后退鍵即可,剩下的即為判斷兩次點擊BACK鍵時間間隔問題了。

第一種實現(xiàn)方式:

  package com.example.clickexittest; 
   
  import android.app.Activity; 
  import android.os.Bundle; 
  import android.os.Handler; 
  import android.os.Message; 
  import android.util.Log; 
  import android.view.KeyEvent; 
  import android.widget.Toast; 
   
  public class MainActivity extends Activity { 
     
    private static final String TAG = MainActivity_Exit.class.getSimpleName(); 
   
    // 定義一個變量,來標識是否退出 
    private static boolean isExit = false; 
   
    private static Handler mHandler = new Handler() { 
   
      @Override 
      public void handleMessage(Message msg) { 
        super.handleMessage(msg); 
        isExit = false; 
      } 
    }; 
     
    @Override 
    protected void onCreate(Bundle savedInstanceState) { 
      super.onCreate(savedInstanceState); 
      setContentView(R.layout.activity_main); 
       
    } 
     
    @Override 
    public boolean onKeyDown(int keyCode, KeyEvent event) { 
      if (keyCode == KeyEvent.KEYCODE_BACK) { 
        exit(); 
        return true; 
      } 
      return super.onKeyDown(keyCode, event); 
    } 
     
    private void exit() { 
      if (!isExit) { 
        isExit = true; 
        Toast.makeText(getApplicationContext(), "再按一次后退鍵退出程序", 
            Toast.LENGTH_SHORT).show(); 
        // 利用handler延遲發(fā)送更改狀態(tài)信息 
        mHandler.sendEmptyMessageDelayed(0, 2000); 
      } else { 
        
        Log.e(TAG, "exit application"); 
         
        this.finish(); 
      } 
    } 
  } 

在exit方法中,會首先判斷isExit的值,如果為false的話,則置為true,同時會彈出提示,并在2000毫秒(2秒)后發(fā)出一個消息,在 Handler中將此值還原成false。如果在發(fā)送消息間隔的2秒內,再次按了BACK鍵,則再次執(zhí)行exit方法,此時isExit的值已為 true,則會執(zhí)行退出的方法。

第二種實現(xiàn)方式:

  package com.example.clickexittest; 
   
  import android.app.Activity; 
  import android.os.Bundle; 
  import android.util.Log; 
  import android.view.KeyEvent; 
  import android.widget.Toast; 
   
  public class MainActivity extends Activity { 
   
    private static final String TAG = MainActivity.class.getSimpleName(); 
   
    private long clickTime = 0; //記錄第一次點擊的時間 
   
    @Override 
    protected void onCreate(Bundle savedInstanceState) { 
      super.onCreate(savedInstanceState); 
      setContentView(R.layout.activity_main); 
   
    } 
   
    @Override 
    public boolean onKeyDown(int keyCode, KeyEvent event) { 
      if (keyCode == KeyEvent.KEYCODE_BACK) { 
        exit(); 
        return true; 
      } 
      return super.onKeyDown(keyCode, event); 
    } 
   
    private void exit() { 
      if ((System.currentTimeMillis() - clickTime) > 2000) { 
        Toast.makeText(getApplicationContext(), "再按一次后退鍵退出程序", 
            Toast.LENGTH_SHORT).show(); 
        clickTime = System.currentTimeMillis(); 
      } else { 
        Log.e(TAG, "exit application"); 
        this.finish(); 
  //     System.exit(0); 
      } 
    } 
  } 

判斷用戶兩次按鍵的時間差是否在一個預期值之內,是的話直接直接退出,不是的話提示用戶再按一次后退鍵退出。

以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持腳本之家。

相關文章

  • Android實現(xiàn)隱私政策彈窗與鏈接功能

    Android實現(xiàn)隱私政策彈窗與鏈接功能

    現(xiàn)在幾乎所有的應用市場都要求應用上架需要用戶協(xié)議/隱私政策,本篇內容將介紹如何在APP內植入一個隱私政策彈窗與鏈接,對Android隱私政策彈窗實現(xiàn)代碼感興趣的朋友跟隨小編一起看看吧
    2021-07-07
  • Android Zip解壓縮工具類分享

    Android Zip解壓縮工具類分享

    這篇文章主要為大家詳細介紹了Android Zip解壓縮工具類,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2017-12-12
  • Android消息機制Handler用法總結

    Android消息機制Handler用法總結

    這篇文章介紹了Android消息機制Handler用法總結,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2021-11-11
  • 談談Android Fragments 詳細使用

    談談Android Fragments 詳細使用

    本篇文章主要介紹了Android Fragments 詳細使用,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2016-12-12
  • Android入門之Handler的使用教程詳解

    Android入門之Handler的使用教程詳解

    這篇文章主要為大家詳細介紹了Android中Handler機制的使用,文中的示例代碼講解詳細,有需要的朋友可以借鑒參考下,希望能夠對大家有所幫助,
    2022-11-11
  • Android中Root權限獲取的簡單代碼

    Android中Root權限獲取的簡單代碼

    那么我們在Android開發(fā)中如何獲取Android的Root權限呢?下面是主要的簡單代碼。
    2013-06-06
  • kotlin中object關鍵字的三種使用場景

    kotlin中object關鍵字的三種使用場景

    這篇文章主要給大家介紹了關于kotlin中object關鍵字的三種使用場景,文中通過示例代碼介紹的非常詳細,對大家學習或者使用kotlin具有一定的參考學習價值,需要的朋友們下面來一起學習學習吧
    2020-06-06
  • Android?Studio實現(xiàn)簡易計算器源碼

    Android?Studio實現(xiàn)簡易計算器源碼

    這篇文章主要為大家詳細介紹了Android?Studio實現(xiàn)簡易計算器源碼,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2022-05-05
  • Android Listview中顯示不同的視圖布局詳解及實例代碼

    Android Listview中顯示不同的視圖布局詳解及實例代碼

    這篇文章主要介紹了Android Listview中顯示不同的視圖布局詳解及實例代碼的相關資料,需要的朋友可以參考下
    2017-02-02
  • Android TextView漸變顏色和方向及動畫效果的設置詳解

    Android TextView漸變顏色和方向及動畫效果的設置詳解

    TextView的在安卓中可以理解為一個文本視圖控件,Android的視圖控件的基類是View類,可以理解的TextView是View的子類。我們通常在.XML布局文件中會為文本視圖控件指定各種屬性來設置它的樣式,今天我們要講的當然不是傳統(tǒng)常見的那種,將會帶有漸變顏色和方向及動畫效果
    2021-11-11

最新評論