У меня есть действие с одним EditText, где мне нужно только ввести цифры.
Теперь я определил тип ввода для моего EditText только для числа и нарисовал красивую клавиатуру для моего пользователя, однако я также должен убедиться, что программная клавиатура не появляется для моего пользователя, когда они нажимают на EditText.
Я попытался скрыть клавиатуру через манифест, добавив
android:windowSoftInputMode="stateAlwaysHidden"
в моем Манифесте для конкретного действия, но это не работает для меня, потому что, как только пользователь нажимает на EditText, снова появляется клавиатура.
Я пытался сделать то же самое программно, как это
activity.getWindow().setSoftInputMode(WindowManager.LayoutParams.SOFT_INPUT_STATE_ALWAYS_HIDDEN);
но это тоже не работает. Клавиатура появляется, когда пользователь нажимает на EditText.
Единственное, что сработало, установило для InputType значение NULL для EditText следующим образом:
EditText.setInputType(InputType.TYPE_NULL);
но я не могу использовать это, потому что это позволит пользователям, которые подключили клавиатуру к своему устройству, вводить буквы и другие символы в поле EditText, в то время как я хочу, чтобы все специально использовали только клавиатуру для ввода данных в поле.
Я должен также упомянуть, что в настоящее время я тестирую свое приложение под Android 2.1, но я бы хотел, чтобы мое решение работало во всех версиях. Любая помощь будет оценена. Заранее спасибо.