android:onKeyDown


android項目中的返回鍵有時處理不當,會是一個十分麻煩的問題。

在監聽物理鍵時,可以用onKeyDown方法,Activity已經自己有KeyEvent.Callback這個接口了,因為項目有使用Fragment,Fragment沒有這個接口,事實上,即使你自己implements了KeyEvent.Callback,它自己也不會調用(暫時不知道為什么)。但是FragmentActivity是有這個接口的,所以我們只要在Activity中實現相關邏輯即可。如果你需要在特定的Fragment監聽的話可以結合使用FragmentManager.getBackStackEntryCount()。

@Override
public boolean onKeyDown(int keyCode, KeyEvent event)  {
    if (keyCode == KeyEvent.KEYCODE_BACK && event.getRepeatCount() == 0) { //按下的如果是BACK,同時沒有重復
      //do something here
        return true;
    }

    return super.onKeyDown(keyCode, event);
}


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM