wie zu vermeiden, die Vorschläge der Tastatur für android reagieren-native
Hai ich bin kämpfen mit Tastatur-problem bei android, wenn ich will geben, was in der text-Eingabe ist es zeigen einige Vorschläge in die Tastatur, ich will nicht diese Ratschläge, Kann mir einer helfen, wie zu vermeiden, diejenigen Vorschläge.
Jede Hilfe viel geschätzt, das Bild vom nexus 6.
Hier ist mein TextInput-code
<TextInput
style={styles.TextInput}
value={this.state.currentWord}
onChangeText={(text) => this.setState({currentWord:text.trim()})}
placeholder="Type Your word here"
autoCapitalize='characters'
autoCorrect={this.state.autoCorrect}
autoFocus={this.state.autoFocus}/>
In Staat hiermit erkläre ich die AutoKorrektur falsch
- Haben Sie " AutoKorrektur falsch?
- yah aber es funktioniert nicht bei android, Bei IOS funktioniert es
- Konnte Sie nach dem code für Ihre TextInput? Wenn ich versuche es in den emulator AutoKorrektur={false}, funktioniert einwandfrei.
- Oben habe ich attched der code für die TextInput -
- Sorry, aber ich kann nicht Ihr problem reproduzieren. Es funktioniert genau so, wie es sollte im emulator.
- Hatte das exakt gleiche problem auf einem echten Gerät Samsung note 3 (android 5). Haben dieses problem nicht auf Nexus5x (android 6), oder den super-günstigen android-4.4-Gerät. Hätte jemand eine Erklärung... Auf jedem Gerät : die app hat
disabled
autoCorrect
und alle Geräte hattenauto-suggestion active
. - Von einer vertrauenswürdigen Namen: "Während ich Liebe diese features, Sie sind nicht immer anwendbar ist und, wenn Sie nicht erhalten die Nutzer frustriert"
- Nun, wenn ich nur könnte einen Weg finden, um diesen wieder aktivieren, wenn ein Entwickler deaktiviert hat...
- 2 Jahre später und der Fehler ist immer noch vorhanden!
Du musst angemeldet sein, um einen Kommentar abzugeben.
Bei der Verwendung
autoComplete="false"
Reagieren nativen legt die zugrunde liegenden nativen android-Eingang TypTYPE_TEXT_FLAG_NO_SUGGESTIONS
und löschtTYPE_TEXT_FLAG_AUTO_CORRECT
, effektiv sagen, das system nicht zu bieten, irgendwelche Vorschläge (siehe source code). Dies ist die empfohlene Möglichkeit der Deaktivierung von text-Vorschläge pro die Android-Referenz-guides.Das problem ist, es scheint, dass einige (oder viele?) HTC-Geräte haben diese Einstellung nicht berücksichtigt. Aus meiner Forschung, es scheint, einige Samsung Geräte unterstützen möglicherweise nicht dies entweder. Es ist davon auszugehen, dass andere Hersteller wird diese Einstellung nicht berücksichtigt - die Wohnung nervt einfach nur. Dies ist eines der großen Probleme mit Android - irgendwie wollten Sie nicht, lernen Sie von Microsoft -, dass sleazy Hersteller zerstören die Zuverlässigkeit Ihrer Produkte und es dauert Jahre (ein Jahrzehnt, in etwa), auch nur ansatzweise rückgängig zu machen der Schaden
</rant>
. (Hinweis: ich bin ein Android-fan).Nach Daniels Antwort, es scheint jemand Erfolg gehabt, wenn die text-Typ zu verwenden
TYPE_TEXT_VARIATION_FILTER
- was sagt das Gerät, dass Ihre Eingabe wird verwendet, um das filtern einer Liste von Elementen. Laßt uns versuchen, den vorhandenen text zu ändern-Eingang und sehen, ob es funktioniert - dann können Sie bauen unsere eigenen, wenn Sie wollen:Müssen Sie die Datei zu finden
ReactTextInputManager.java
. Aus dem Reagieren Native Ordner, es liegt an diesem Pfad:In Zeile 378 finden Sie eine Methode namens
setAutoCorrect
- update auf die folgenden:Bauen Sie Ihre app und testen. Wenn es nicht funktioniert, versuchen Sie beide Instanzen von
InputType.TYPE_TEXT_FLAG_NO_SUGGESTIONS |
(einschließlich der Leitung) aus dem obigen code und versuchen Sie es erneut. Wenn das nicht funktioniert, ich denke, Sie sind aus Glück heraus.Wenn es hat arbeiten, dann können Sie sich entweder a) anweisen, alle in Ihrem team, wie Sie die reagieren, nativen Komponente vor dem Gebäude (hacky und unzuverlässig), oder b) bauen Sie Ihren eigenen text-input-Komponente. Sie sollten in der Lage sein, zu kopieren und die vorhandenen TextInput-code und sollte nicht zu viel schreiben, nativen code - meist nur die Umbenennung Dinge. Viel Glück.
Update: gehen in den Kaninchenbau, können Sie auch versuchen, die Einstellung
TYPE_TEXT_VARIATION_VISIBLE_PASSWORD
. So, hier ist die Küche-Waschbecken - ich nehme an, Sie können Lesen Sie den code gut genug, um zu spielen, um mit verschiedenen Kombinationen von input-Typen:Hilft es zu verstehen, dass die Signatur der Methode für
updateStagedInputTypeFlag
ist folgende:Update 2: Es gibt viel "input type" - flags, die Sie verwenden können, hier finden Sie eine vollständige Liste hier. Fühlen Sie sich frei, um zu versuchen, andere - man könnte stolpern, der funktioniert. Sie sollten in der Lage sein, ändern Sie den code aus meinem ersten update oben.
InputType.
's in meiner ursprünglichen Antwort - ich habe im code eingetragen. Auch, im Einklang mit der Art von dieser Antwort, Sie können versuchen, eine der Eingangs beschriebenen Arten hier.<input name="password>
(Hinweis: das Attribut "name", nicht "geben"). Auch erwähnenswert ist, dass ich don ' T glaube, Sie können deaktivieren Sie die Vorschläge auf API < 5.0. Anmerkung 3 verwendet, Jelly Bean, 4,3. Sie sind auf jeden Fall nicht wahrscheinlich, um eine Lösung zu finden für die. Sorry Mann: - (wenn jemand dieses problem hat, Einstellung AutoKorrektur=false und keyboardType="visible-Passwort" verbirgt sich die Vorschläge in android
Können Sie die TextInput-Set " AutoKorrektur falsch.
Müssten Sie schreiben Ihre eigene Android
TextView
wrapper, setzt die richtigen input geben. Sehen Sie diese stack-overflow-post für weitere Informationen auf das android-Teil.Unser fix/hack war, ändern Sie einfach die Eingabe der Art von text, E-Mail und zurück zum text.
Meine Lösung war, mit keyboardType={'sichtbar-Passwort'}, wenn das Kennwort ist sichtbar