So deaktivieren Sie die Rechtschreibprüfung für Android edittext

106

Ich möchte die Unterstreichungen aus Texten in Edittext-Feldern entfernen. Textdateien mit unterstrichenen Texten

Wie kann ich das machen?

Sandah Aung
quelle
1
Können Sie verwandte Codes anzeigen? Haben Sie die Codes hinzugefügt oder handelt es sich um eine Rechtschreibprüfung?
Raptor
7
Versuchen Sie es, indem Sie die Rechtschreibprüfung deaktivieren android:inputType="textNoSuggestions"?
ρяσsρєя K
Wie ich die Redline in meinem Edittext zeige, kannst du mir bitte sagen?
S HemaNandhini
@SNandhini Verwenden Sie Folgendes: <EditText android: id = "@ + id / message" android: layout_width = "wrap_content" android: layout_height = "wrap_content" android: inputType = "textCapSentences | textAutoCorrect" ... />
Sandah Aung
Vielen Dank für Ihre Antwort Sandah Aung. Aber es funktioniert nicht für mich.
S HemaNandhini

Antworten:

226

Sie können dies mit folgendem Code tun. Fügen Sie es einfach in das Layout von ein EditText.

android:inputType="textNoSuggestions"
Chintan Rathod
quelle
7
Ich habe festgestellt, dass dadurch alle Zeilenumbrüche entfernt werden, wenn dies eingestellt ist.
AndroidDev
Ich habe Floating EditText verwendet und war mit diesem Problem konfrontiert, aber Ihre Lösung funktioniert bei mir nicht. Als ich mich auf editText konzentrierte, stürzte die App mit java.io.IO ab. Ausnahme: null InputStream
Amal Kronz
1
@AmalKronz Diese Lösung ist EditTextnur für . Nicht mit Floating EditText getestet. (Ich denke du meinst mit TextInputlayout)
Chintan Rathod
Ja, ich meine TextInputLayout. Wenn der Fehler auftritt und Sie versuchen, ihn zu bearbeiten, ist die App abgestürzt. Können Sie mir bitte helfen?
Amal Kronz
1
Vorsicht, dies deaktiviert auch Tastaturvorschläge.
Saket
49

Um die Rechtschreibprüfung loszuwerden, müssen Sie den EditTextInputType des XML-Codes wie folgt angeben :

android:inputType="textNoSuggestions"

Wenn Sie EditTextjedoch mehrzeilig sind und auch die Rechtschreibprüfung loswerden müssen, müssen Sie den InputType des EditText im XML wie folgt angeben:

android:inputType="textMultiLine|textNoSuggestions"
ShutterSoul
quelle
19

Kleinere Ergänzung zu Chintans Antwort - eine solche (und andere) Kombination ist ebenfalls zulässig:
android:inputType="textCapSentences|textNoSuggestions"

Artemiy
quelle
11

Oder wenn Sie nur die rote Unterstreichung (und den Autokorrekturdialog) deaktivieren möchten, können Sie die überschreiben isSuggestionsEnabled() MethodeTextView .

Dadurch funktioniert die automatische Vervollständigung der Tastatur weiterhin.

Simekadam
quelle
Könnten Sie bitte Ihre vorgeschlagene Implementierung von isSuggestionsEnabled () angeben?
Massimo Baldrighi
5
return false;
Simekadam
Eine perfekte Lösung für Apps wie "Notizen" - Sie können beliebige benutzerdefinierte Wörter schreiben, ohne dass Fehler rot unterstrichen werden. Trotzdem erhalten Sie alle Vorschläge für Text schneller.
Kirill Karmazin
3

Ich habe gerade eine Zeile für EditText hinzugefügt editText.setInputType(InputType.TYPE_TEXT_FLAG_NO_SUGGESTIONS);

und es hat gut funktioniert für mich.

Akhilesh VS
quelle
3

Ich konnte also keinen direkten Weg finden, dies zu tun. Gehen Sie also mit der folgenden Problemumgehung vor:

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

Da der Eingabetyp zu einem sichtbaren Kennwort wird, wird die rote Unterstreichung nicht angezeigt, selbst wenn die Rechtschreibprüfung in den Geräteeinstellungen aktiviert ist. :) :)

SKP
quelle
+1 ^ dies, ich hatte ein Problem, dass beim Eingeben von Leerzeichen ("") und Komma (".") Der Text des EditText in "." Und nicht in "." Wie ich beabsichtigt hatte, hat das Hinzufügen von "textVisiblePassword", wie Sie vorgeschlagen haben, es für mich gelöst, danke :)
Ariel Yust