Android教程網
  1. 首頁
  2. Android 技術
  3. Android 手機
  4. Android 系統教程
  5. Android 游戲
 Android教程網 >> Android游戲 >> Android游戲開發 >> Android游戲開發教程之十四:按鍵中斷事件的處理

Android游戲開發教程之十四:按鍵中斷事件的處理

編輯:Android游戲開發

       我們在玩Android游戲時,可能會有一些其他的突發事件發生,例如突然有人撥打電話,或者在游戲中按下了一些特殊的鍵(如拍照鍵),這些在Android游戲開發時都需要考慮,也就是要為按鍵中斷事件進行相應的處理。

Java代碼
  1. @Override      
  2. public boolean dispatchKeyEvent(KeyEvent event)      
  3. {      
  4.      switch (event.getKeyCode())      
  5.      {      
  6.           case KeyEvent.KEYCODE_VOLUME_UP:   //音量鍵+      
  7.           case KeyEvent.KEYCODE_VOLUME_DOWN:   //音量鍵-      
  8.           case KeyEvent.KEYCODE_CAMERA:  //拍照鍵      
  9.           case KeyEvent.KEYCODE_FOCUS:   //拍照鍵半按的對焦狀態      
  10.           //   event.getAction() == KeyEvent.ACTION_UP   //提示:如果按鍵按下後彈起時觸發      
  11.                      
  12.                return true; //這些標記為處理過,則不在往內部傳遞      
  13.           default:      
  14.                break;      
  15.      }      
  16.      return super.dispatchKeyEvent(event);      
  17. }   

       對於游戲突然來電話我們一般采取通過PhoneStateListener類提供的public void onCallStateChanged (int state, String incomingNumber) 回調方法可以獲取電話的狀態,比如常規空閒時CALL_STATE_IDLE、來電時CALL_STATE_RINGING和CALL_STATE_OFFHOOK 摘機通話中,有關處理的細節網友可以查看Android Git項目中的Music,在Android開源項目中系統自帶的音樂播放器可以很好的處理,比如在通話結束後恢復音樂播放,而我們游戲需要做的就是記住當前的游戲狀態盡量數據持久化處理,不能因為長時間的通話,游戲的Activity被清理了,這裡我們一般通過onSaveInstanceState來保存當前窗口的一些記錄,通過Intent標記來讓系統管理好我們游戲的生命周期。

  1. 上一頁:
  2. 下一頁:
熱門文章
閱讀排行版
Copyright © Android教程網 All Rights Reserved