Сайт разработчика Александр Климова

/* Моя кошка замечательно разбирается в программировании. Стоит мне объяснить проблему ей - и все становится ясно. */
John Robbins, Debugging Applications, Microsoft Press, 2000

KeyboardView - создаём свою клавиатуру

5-й курс/Закрытая зона

Когда мы хотим ввести какие-то данные в текстовые поля, то обычно используем клавиатуры, которые установлены в системе. По сути, клавиатура - это обычное приложение в формате APK. Как правило, в системе уже установлена системная клавиатура, также может стоять клавиатура от производителя аппарата, и можно загрузить отдельную клавиатуру с Google Play.

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

Тем не менее, может возникнуть такая ситуация, когда понадобится свой вид клавиатуры. Допустим, мы хотим иметь клавиатуру для ввода шестнадцатиричных чисел с клавишами от 0-9 и A, B, C, D, F. Значит нам придётся разработать собственную клавиатуру.

Стоит отметить, что стандартные клавиатуры работают как сервисы и доступны для всех приложений. Мы же напишем упрощённый вид клавиатуры, который будет работать только в пределах нашей активности. Не стоит думать, что это половинчатое решение. Для нашей шестнадцатиричной клавиатуры данный подход является оптимальным. Во-первых, не всем нужна такая клавиатура и устанавливать лишний APK-файл пользователь не захочет. Во-вторых, текстовые поля не имеют атрибута для распознавания шестнадцатиричных чисел и мы не сможем автоматически выводить клавиатуру. Поэтому, вполне логично внедрить нужную клавиатуру там, где она нужна.

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

Реклама