Android 物理按鍵整理及實例代碼
先給大家看一段代碼,然后說明。
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 { @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); } //我們在處理物理按鍵事件時,提供的回調(diào)方法有onKeyUp(),onKeyDown(),和onKeyLongPress(),比如音量鍵、返回鍵 @Override public boolean onKeyDown(int keyCode, KeyEvent event) { if(keyCode == KeyEvent.KEYCODE_BACK){ Log.e("TAG", "這是監(jiān)聽鍵盤操作,按下了Back鍵"); } return super.onKeyDown(keyCode, event); } @Override public boolean onKeyUp(int keyCode, KeyEvent event) { if(keyCode == KeyEvent.KEYCODE_VOLUME_UP){ Log.e("TAG", "音量加鍵"); } return super.onKeyUp(keyCode, event); } //Activity中,我們可以重寫onBackPressed()方法來處理返回鍵,如兩次按鍵退出 //第一次按下的時候,記錄事件 //第二次按下的事件減去第一次按下的時間小于2s就退出,否則將當前時間賦給第一次事件 long startTime; @Override public void onBackPressed() { Log.e("TAG", "監(jiān)聽Back鍵"); if(System.currentTimeMillis()-startTime<2000){ super.onBackPressed();//釋放資源,這個也可以直接finish(),但調(diào)用父類的釋放的更徹底 }else{ //記錄當前時間 startTime = System.currentTimeMillis(); Toast.makeText(this, "再按一次Back鍵退出", Toast.LENGTH_SHORT).show(); } } }
一些常用物理按鍵
電源鍵 KEYCODE_POWER
后退鍵 KEYCODE_BACK
菜單鍵 KEYCODE_MENU
HOME鍵 KEYCODE_HOME
相機鍵 KEYCODE_CAMERA
音量鍵 KEYCODE_VOLUME_UP / KEYCODE_VOLUME_DOWM
搜索鍵 KEYCODE_SEARCH
方向鍵 KEYCODE_DPAD_CENTER
KEYCODE_DPAD_UP
KEYCODE_DPAD_DOWN
KEYCODE_DPAD_LEFT
KEYCODE_DPAD_RIGHT
鍵盤鍵 KEYCODE_0...KEYCODE_9
KEYCODE_A....KEYCODE_Z
感謝閱讀,希望能幫助到大家,謝謝大家對本站的支持!
相關文章
Android小程序?qū)崿F(xiàn)訪問聯(lián)系人
這篇文章主要為大家詳細介紹了Android小程序?qū)崿F(xiàn)訪問聯(lián)系人,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一2020-05-05item高度不同時Recyclerview獲取滑動距離的方法
這篇文章主要介紹了item高度不同時Recyclerview獲取滑動距離的方法,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧2018-11-11android studio 安裝完成ButterKnife插件卻無法使用(解決方案)
這篇文章主要介紹了android studio 安裝完成ButterKnife插件卻無法使用問題,本文通過圖文并茂的形式給大家分享解決方法,對大家有非常好的幫助,需要的朋友可以參考下2020-03-03