Специальная программная клавиатура для Android

Есть ли способ создать специальную программную клавиатуру для Android на Android? Прочитав о документах InputMethodService и проверке альтернативных приложений для клавиатуры, я полагаю, что альтернативная клавиатура может быть настроена только для использования в системе (через "Настройки" → "Язык и текст" ).

Если ответ на предыдущий вопрос отсутствует, то есть ли хотя бы способ загрузки пользовательского словаря и переопределения стандартного словаря системной клавиатуры (только когда мое приложение используется)? Это поможет в предоставлении очень важных предложений пользователю, когда он только постучал пару ключей.

2 ответа

Если вам просто нужен вид, который выглядит и действует как мягкая клавиатура, я сделал это в мой класс SmallKeyboard. Вам просто нужно расширить android.inputmethodservice.KeyboardView и принять решение о макете. См. Методы onKey и onText в конце этого файла для действий, предпринимаемых при нажатии клавиш.

Вместо внутреннего класса модели клавиатуры вы можете загрузить его из XML, если ваш набор ключей довольно постоянный.


В приложении Android Nethack есть полный и понятный исходный код, как создать пользовательскую клавиатуру для приложения, как отобразить его на экране и как определить несколько раскладок клавиатуры. Он содержит почти все, что вам нужно знать.

Это, безусловно, лучший пример, который я видел.

http://code.google.com/p/nethack-android/

licensed under cc by-sa 3.0 with attribution.