Как полностью отключить мягкую клавиатуру для всех входных данных в веб-браузере Android

Я использую phonegap для разработки веб-приложения для Android, и поскольку у меня будет своя клавиатура в HTML, мне нужно отключить системную клавиатуру Android, чтобы она не отображалась, когда пользователь нажимает на любое текстовое поле ввода. Я не хочу использовать поле ввода только для чтения или onblur(), так как я хотел бы иметь курсор в текстовом файле, чтобы пользователь мог перемещать позицию курсора во время ввода входов.

Итак, я хочу полностью отключить Android-клавиатуру по умолчанию, я попытался добавить android:windowSoftInputMode="stateAlwaysHidden" в manifest.xml, но это не сработает.

Я также пытаюсь использовать интерфейс javascript из здесь, но на Android 2.3.x произошла авария с мостом javascript-java. (для публикации). Поэтому у меня пока нет хорошего решения. Пожалуйста, помогите.

Заранее благодарим за любую помощь.

Ответ 1

Хорошо, у вас есть несколько вариантов! Вы можете полностью отключить клавиатуру, используя:

  • getWindow().setSoftInputMode(WindowManager.LayoutParams.SOFT_INPUT_STATE_HIDDEN);

    • Если вы выберете этот способ, обязательно верните настройки в нормальное состояние, если это не сделано автоматически. Я не использовал это раньше и не мог сказать вам, как он себя ведет, но помните об этом! Вы не хотите, чтобы пользователь отвечал на текст, который они получают, используя приложение только для отключения своей клавиатуры:)


  • Вы можете использовать что-то похожее на следующую ссылку. Я не очень хорошо прорыл его (tl; dr), но он создает настраиваемое представление, которое простирается от android.inputmethodservice.KeyboardView и использует это вместо этого.