Ish*_*wan 5 android amazon-fire-tv
我正在使用 Amazon Fire Stick TV 开发电视应用程序。我需要通过电视遥控器处理 Dpad 中心按钮的长按事件。onKeyDown()对于 DPad 中心按钮,只有长按 DPad 中心按钮时我才会多次接到呼叫。
尝试长按 DPad 中心按钮时,我没有收到任何对Activity 的OnKeyUp()方法和方法的调用。onLongKeyPress()这是一个错误吗?
我的编译 SDK 版本是“23”。
我通过像这样处理KEYCODE_DPAD_CENTERkeyevent解决了这个问题dispatchKeyEvent(KeyEvent event):
@Override
public boolean dispatchKeyEvent(KeyEvent event) {
int action = event.getAction();
int keyCode = event.getKeyCode();
switch (keyCode) {
case KeyEvent.KEYCODE_DPAD_CENTER:
Log.d(TAG,"Down time is" + event.getDownTime()+"with action:" + event.getAction()+ "with repeat count"+ event.getRepeatCount()+"with long press"+ event.isLongPress());
if (action == KeyEvent.ACTION_DOWN && event.isLongPress()) {
Log.d(TAG,"LOng pres Down time is" + event.getDownTime());
Log.d(TAG, "Inside long press of Dpad center event");
onCenter();
return true;
}
default:
return super.dispatchKeyEvent(event);
}
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
5658 次 |
| 最近记录: |