0

Я хотел бы создать пользовательскую клавиатуру в своем приложении. Я обнаружил, что должен создать новый метод ввода. Но я не знаю, как установить этот метод в свой EditText и отключить стандартную клавиатуру. Я не хочу, чтобы у пользователя была возможность изменить эту клавиатуру. Могу ли я решить эту проблему с помощью пользовательского метода ввода или мне нужно вместо этого создать клавиатуру?Пользовательская клавиатура для Android-приложения

+0

Просто из любопытства; что будет отличаться от вашей пользовательской клавиатуры? – Zimano

+0

@ Zimano: Это будет клавиатура из калькулятора для дизайна материалов для Android android, она будет иметь десятичный разделитель в зависимости от локали и выявить эффекты на кнопках –

ответ

3

Но я не знаю, как установить этот метод в мой EditText и отключить стандартную клавиатуру

Вы не можете. Пользователь выбирает метод ввода, потому что метод ввода является общесистемным.

Могу ли я решить эту проблему с помощью пользовательского метода ввода или же я должен создать клавиатуру как пользовательский вид?

Если вы не собираетесь взять время, чтобы поддержать все пользователей — с нарушениями зрения, те, с помощью физической клавиатуры и т.д. — вы не должны делать это вообще.

Предполагая, что вы собираетесь обращаться со всеми пользователями, это должно быть настраиваемое представление, если вы собираетесь заставить пользователя использовать его.

+0

Итак, если это будет пользовательский вид, могу ли я использовать его с помощью курсора в EditText? –

+1

@KirylTkach: Ум, ну, курсор будет там по умолчанию. Вам нужно будет найти, где находится курсор, а затем сплайсировать любой символ, введенный пользователем в этой позиции курсора. Вы также должны будете иметь возможность обрабатывать выбор/замену текста, какую-то «опцию backspace» и другие вещи, которые ожидают пользователи. Обычно разработчики подхода используют не для того, чтобы реализовать клавиатуру, а просто для проверки текста, чтобы убедиться, что он соответствует любым правилам, которые у вас есть для того, что он должен содержать. – CommonsWare

+0

Спасибо за помощь. Я собираюсь использовать клавиатуру из калькулятора Android. Поэтому, если я собираюсь отключить стандартную клавиатуру, должен ли я просто установить метод inputMethod равным нулю? –

Смежные вопросы