我的應用程序中有以下代碼。只要音量按鈕保持按下狀態,我就會得到ACTION_DOWN,但是當我釋放它時,我希望得到ACTION_UP。這不會發生。爲什麼?它可能是我的LG G2(棒棒糖)上的錯誤?我需要的只是爲VolumeUp按鈕操作添加一個監聽器。增大音量按鈕在發佈時不提供動作
@Override
public boolean onKeyDown(int keyCode, KeyEvent event) {
if (keyCode == KeyEvent.KEYCODE_VOLUME_UP) {
if (event.getAction() == KeyEvent.ACTION_UP) {
//TODO
Log.d(TAG,"VOL UP");
return true;
}
if (event.getAction() == KeyEvent.ACTION_DOWN) {
//TODO
Log.d(TAG,"VOL DOWN");
return true;
}
Log.d(TAG,String.valueOf(keyCode));
return true;
}
return super.onKeyDown(keyCode, event);
}
你應該使用'@覆蓋公共布爾的onkeyup(INT的keyCode,KeyEvent的事件){...}'來跟蹤關鍵了 – zzas11
謝謝@ zzas11!有用!我認爲onKeyDown()方法還提供了一個關於按鈕釋放的事件... –
不客氣。您可以參考Android API文檔:http://developer.android.com/reference/android/view/KeyEvent.Callback.html – zzas11