Android WebView: ручка клавиш со стрелками в JavaScript

У меня есть простое приложение WebView, которое я хочу контролировать с помощью клавиатуры. Можно ли использовать клавиши со стрелками в javascript?

Я пробовал следующий код без везения:

function handleArrowKeys(evt) { console.info('key'); } document.onkeyup = handleArrowKeys; document.onkedown = handleArrowKeys; document.onkepress = handleArrowKeys; 

Javascript включен в веб-просмотре

 WebSettings webSettings = webview.getSettings(); webSettings.setJavaScriptEnabled(true); webSettings.setDomStorageEnabled(true); 

Вы должны перезаписать метод onKeyDown для WebView. См .: http://blog.csdn.net/focusxi/article/details/6780965

 @Override public boolean onKeyDown(int keyCode, KeyEvent event){ int valKey = 0; System.out.println("Web KEY:"); System.out.println(keyCode); switch(keyCode){ //UP case 50: case 19: valKey = 19; break; //DOWN case 83: case 20: valKey = 20; break; //LEFT case 81: case 21: valKey = 21; break; //RIGHT case 69: case 22: valKey = 22; break; } if (valKey!=0) { //new KeyEvent(KeyEvent.ACTION_DOWN,KeyEvent.KEYCODE_SHIFT_LEFT); KeyEvent event1 = new KeyEvent(KeyEvent.ACTION_DOWN, valKey); System.out.println(event1.getKeyCode()); return super.onKeyDown(38, event1); } else { return super.onKeyDown(keyCode, event); } } } 
Intereting Posts
Прядильщик с пустым выбором Как получить серийный номер или идентификатор эмулятора Android после его запуска? Увеличенный, обрезанный значок в уведомлении False «Генерировать подписанные APK – APK (s) сгенерированы успешно» всплывающее сообщение при каждом создании сборки (после создания подписанного apk один раз) Java.lang.UnsatisfiedLinkError: собственный метод не найден: ошибка в jni () Как разрешить только альбом / портрет для планшетов Может ли один эмулятор отправить SMS на себя Как создать набор тестов для Android, который запускает только определенные тесты в одном или нескольких классах? Получите общий объем оперативной памяти, который использует приложение на Android Объемы сбора мусора: MediaPlayer завершился без выпуска Безопасное подключение к веб-сервису из приложения Android Попытайтесь вызвать getDuration без действительного медиаплеера в медиаплеере на android Java.lang.IllegalArgumentException: имя хоста не может быть нулевым, при запуске запроса на получение Обработка содержимого gzipped на Android Как работает поиск в Google?