einfach Scrollview mit mehreren TextInputs Stellen Sie sich vor, wieReagieren india zwei Hähnen erfordert Eingabefokus zu ändern, wenn innerhalb Scroll
<ScrollView style={styles.container}>
<TextInput style={styles.input} />
<TextInput style={styles.input} />
</ScrollView>
Als ich das erste Eingabe eingeben, Tastatur öffnet und ich kann Text eingeben. Wenn ich zum zweiten Eingang wechseln möchte, muss ich zweimal tippen - der erste Typ schließt die Tastatur und nur der zweite Tipp öffnet die Tastatur für die zweite Eingabe.
Eine Lösung ist zu verwenden keyboardShouldPersistTaps={true}
- Schaltung funktioniert gut, aber dann ist die Tastatur überhaupt nicht geschlossen und die Tastatur kann einige der späteren Eingänge (oder Tasten) abdecken. Ich kann auch keyboardDismissMode
verwenden, aber nur die Tastatur beim Ziehen schließen.
Meine Frage ist, wie diese beiden Verhaltensweisen kombiniert werden - IMHO die beste Benutzererfahrung - wenn ich auf einen anderen Eingang klicke, wird der Fokus sofort geändert, ohne die Tastatur wieder zu öffnen und wenn ich irgendwo anders klopfe, wird die Tastatur geschlossen?
I RN0.22 und Beispielanwendung bin mit finden Sie unter https://rnplay.org/apps/kagpGw
UPDATE - Dieses Problem ist in RN 0.40 gelöst worden sein könnte - siehe https://github.com/facebook/react-native/commit/552c60192172f6ec503181c060c08bbc5cbcc5a4
danken Sie. Diese Antwort hilft, wenn Sie auf Eingabe klicken, und es wird dann von der Tastatur abgedeckt, sobald es geöffnet ist. Es wird Ihnen jedoch nicht helfen, wenn die zweite Eingabe (oder Schaltfläche) bereits abgedeckt ist - da dieser Trick nur die erste getippte Eingabe in "Ansicht" scrollt, aber es gibt keine Garantien über andere Komponenten. – sodik