В моем приложении, когда пользователь нажимает DPAD_LEFT, я хочу сгенерировать два нажатия DPAD_UP. Я знаю, что это может быть выполняется с помощью такого метода:
@Override private boolean onKeyDown(int keyCode, KeyEvent event) {
if (keyCode == KeyEvent.KEYCODE_DPAD_LEFT) {
keyDownUp(KeyEvent.KEYCODE_DPAD_UP);
keyDownUp(KeyEvent.KEYCODE_DPAD_UP);
return true;
}
return super.onKeyDown(keyCode,event);
}
private void keyDownUp(int a) {
getCurrentInputConnection().sendKeyEvent(
new KeyEvent(KeyEvent.ACTION_DOWN, a));
getCurrentInputConnection().sendKeyEvent(
new KeyEvent(KeyEvent.ACTION_UP, a));
}
Но, чтобы иметь возможность использовать метод "getCurrentInputConnection ()", мне нужно расширить InputMethodService, и это невозможно, потому что мое приложение уже расширяет другой класс. Есть ли другой способ решить эту проблему?