как отключить проверку орфографии в Android edittext


107

Я хочу удалить подчеркивание из текстов внутри полей редактирования текста. текстовые поля с подчеркнутым текстом внутри

Как я могу это сделать?


1
Можете ли вы показать похожие коды? Вы добавляли коды или это проверка орфографии?
Raptor

7
вы попробовали, отключив проверку орфографии android:inputType="textNoSuggestions"?
ρяσѕρєя K

как мне показать пометку в моем тексте редактирования, подскажите, пожалуйста?
S HemaNandhini

@SNandhini Используйте это: <EditText android: id = "@ + id / message" android: layout_width = "wrap_content" android: layout_height = "wrap_content" android: inputType = "textCapSentences | textAutoCorrect" ... />
Sandah Aung

Большое спасибо за ответ, Санда Аунг, но у меня это не работает.
S HemaNandhini

Ответы:


228

Вы можете сделать это с помощью следующего кода. Просто вставьте его в макет EditText.

android:inputType="textNoSuggestions"

7
Я обнаружил, что при его установке будут удалены все разрывы строк.
AndroidDev

Я использовал плавающий editText и столкнулся с этой проблемой, но ваше решение не работает со мной, и когда я сосредоточился на editText, приложение вылетело из-за java.io.IOException: null InputStream
Амаль Кронц

1
@AmalKronz Это решение EditTextтолько для . Не тестировалось с плавающим EditText. (Я думаю, вы имеете в виду TextInputlayout)
Чинтан Ратод

да, я имею в виду TextInputLayout, когда появляется ошибка и пытается ее отредактировать, приложение вылетает, не могли бы вы мне помочь, пожалуйста?
Амаль Кронц

1
Осторожно, это также отключает предложения клавиатуры.
Сакет

50

Чтобы избавиться от проверки орфографии, вы должны указать EditTextInputType в XML следующим образом:

android:inputType="textNoSuggestions"

Однако, если у вас EditTextмногострочный, и вам также нужно избавиться от проверки орфографии, вы должны указать InputType EditText в XML следующим образом:

android:inputType="textMultiLine|textNoSuggestions"

20

Незначительное дополнение к ответу Чинтана - также допускается такая (и другая) комбинация:
android:inputType="textCapSentences|textNoSuggestions"


11

Или, если вы хотите просто отключить красное подчеркивание (и диалог автозамены), вы можете переопределить isSuggestionsEnabled()метод на TextView.

Это продолжит работу автозаполнения клавиатуры.


1
Не могли бы вы представить свою предлагаемую реализацию isSuggestionsEnabled ()?
Massimo Baldrighi

6
return false;
simekadam

1
Идеальное решение для таких приложений, как «Заметки» - вы можете писать любые произвольные слова, которые вам нравятся, без подчеркивания ошибок красным цветом, но все же вы получаете все предложения по тексту быстрее.
Кирилл Кармазин

4

Я только что добавил строку для EditText editText.setInputType(InputType.TYPE_TEXT_FLAG_NO_SUGGESTIONS);

и у меня это сработало.


3

Так что я не смог найти прямого способа сделать это. Итак, пошли по обходному пути ниже:

editText.setInputType(InputType.TYPE_TEXT_FLAG_NO_SUGGESTIONS | InputType.TYPE_TEXT_VARIATION_VISIBLE_PASSWORD);

Поскольку тип ввода становится видимым паролем, даже если проверка орфографии включена в настройках устройства, красная линия подчеркивания не отображается. :)


+1 ^ это, у меня была проблема, что при вводе пробела (""), затем запятой (".") Текст EditText изменился на ".", А не на "." как я и предполагал, добавление textVisiblePassword, как вы предлагали, решило это за меня, спасибо :)
Ариэль Юст
Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.