Убедитесь, что пробел всегда доступен на цифровой клавиатуре

Я разрабатываю приложение, которое позволяет пользователям вводить цифры и пробелы в TextView, поэтому я использую input.setRawInputType(Configuration.KEYBOARD_12KEY так что у пользователя есть симпатичная и удобная цифровая клавиатура. Однако на некоторых устройствах цифровая клавиатура не имеет пробела!

Как сделать так, чтобы у моих пользователей всегда была возможность вводить пробелы и цифры удобным способом?

Я думал о создании своей собственной цифровой клавиатуры, используя фрагменты, но это кажется слишком грубым и неровным.

1 ответ

Решение

Однако на некоторых устройствах цифровая клавиатура не имеет пробела!

Исторически 12-клавишная клавиатура никогда не имела пробела. Возможно, вы захотите взглянуть на устройство, имеющее 12-клавишную клавиатуру, например, не сенсорный телефон с сенсорным экраном.

(блин, я чувствую себя старым...)

Однако решение о том, какие клавиши показывать, остается за разработчиком редактора метода ввода (программная клавиатура). Ваш запрос на 12-клавишную клавиатуру является подсказкой, а не требованием, и определение "12-клавишная клавиатура" остается за этими разработчиками.

Как сделать так, чтобы у моих пользователей всегда была возможность вводить пробелы и цифры удобным способом?

Технически, вы не можете, с точки зрения EditText, Опять же, это зависит от разработчиков редактора метода ввода, а не от вас. Вы можете увеличить свои шансы, запросив буквенно-цифровую клавиатуру, так как те, которые традиционно имели пробелы.

Вы можете создать свою собственную панель ввода данных или использовать EditText но также добавьте некоторую кнопку в вашем интерфейсе для добавления пробела к EditText в текущей позиции текстового курсора.

Другие вопросы по тегам