安卓4.0響應滑鼠左右點選事件
阿新 • • 發佈:2019-01-31
4.0的更新說明裡:為了方便起見,後面滑鼠按鈕被自動對映到KEYCODE_BACK,KEYCODE_FORWARD鍵,應用程式可以處理這些按鍵,支援滑鼠按鈕的基礎和前進導航。 我現在的機器插上滑鼠後左右鍵都是KEYCODE_FORWARD,我想吧右鍵改為KEYCODE_BACK,要在哪裡系統響應這個事件呢。 |
貌似可以給view加個OnGenericMotionListener,然後在
onGenericMotion 方法裡面判斷event.getSource() 是不是滑鼠,然後自己寫功能btn = (Button) findViewById(R.id.btn_mouse);
btn.setOnGenericMotionListener(new OnGenericMotionListener() {
@Override
public boolean onGenericMotion(View v, MotionEvent event) {
// TODO Auto-generated method stub
int what = event.getButtonState();
switch (what) {
case MotionEvent.ACTION_DOWN:
System.out.println("懸浮狀態");
break;
case MotionEvent.BUTTON_PRIMARY:
Toast.makeText(MouseEventActivity.this, "滑鼠左鍵單擊事件", 300).show();
break;
case MotionEvent.BUTTON_TERTIARY:
Toast.makeText(MouseEventActivity.this, "滑鼠中鍵單擊事件", 300).show();
break;
case MotionEvent.BUTTON_SECONDARY:
Toast.makeText(MouseEventActivity.this, "滑鼠右鍵單擊事件", 300).show();
break;
}
return false;
}
});