EditText без автокоррекции и т. Д.
Мой EditText должен принимать ввод, состоящий из частичных слов, имен и т. Д. По крайней мере в моем HTC Desire это сложно, поскольку клавиатура хочет предлагать и / или исправлять некоторые записи (например, изменяет "gor" на "for"). Я попытался установить textNoSuggestions в представлении, но это не исправило это.
Любое простое решение этого?
4 ответа
Вы можете сделать это из кода. Установите тип ввода EditText, как показано ниже:
txtEmail = (EditText) findViewById(R.id.txtEmail);
txtEmail.setInputType(InputType.TYPE_TEXT_FLAG_NO_SUGGESTIONS);
Список всех доступных параметров типа ввода см. По http://developer.android.com/reference/android/text/InputType.html
Попробуй это:
android:inputType="textFilter"
Если это не сработает, попробуйте:
android:inputType="textFilter|textNoSuggestions"
Другие предложения верны, но SwiftKey решил, что будет игнорировать значения inputtype "в ответ на пользовательские запросы". Хотя я согласен, что это плохая идея, поскольку она противоречит рекомендациям Google, и у разработчиков обычно есть веская причина отключить автокоррекцию (например, поля имени пользователя, фамилии и т. Д.), Но она по-прежнему является наиболее часто используемым клавиатурным приложением для устройств Android, так что это может быть большой проблемой.
Обходной путь должен использовать либо
android:inputType="textVisiblePassword"
или же
.setInputType(InputType.TYPE_TEXT_VARIATION_VISIBLE_PASSWORD);
Попробуйте это, если вы хотите многострочный EditText без отображения подчеркивания (автокоррекция):
myEditText.setInputType(InputType.TYPE_CLASS_TEXT |
InputType.TYPE_TEXT_FLAG_MULTI_LINE | InputType.TYPE_TEXT_FLAG_NO_SUGGESTIONS);
Вот XML для этого: android:inputType="textNoSuggestions|textMultiLine"
,