我有一个TextInput我启用multiline的真实.事情是按下Return键后键盘不会隐藏.它走向了一条新的路线.所以我希望使用react-native-dismiss-keyboard.要利用这一点,我需要确定Return键操作.这该怎么做?
<TextInput
style={styles.additionalTextInput}
multiline={true}
autoCapitalize="sentences"
autoCorrect={true}
onChangeText={(text) => this.setState({text})}
keyboardType="default"
returnKeyType="done"
onKeyPress={(keyPress) => console.log(keyPress)}
placeholder="Enter text here..."
/>
Run Code Online (Sandbox Code Playgroud)
Bru*_*Lee 69
我用的是onSubmitEditing道具.例如
<TextInput style={[styles.textInput]}
placeholder='??'
placeholderTextColor='#bbb'
onChange={(event) => {
this.searchChange(event.nativeEvent.text)
}}
returnKeyType='search'
autoFocus={true}
value={ this.props.searchName }
selectionColor={colors.orangeColor}
onSubmitEditing={this.searchSubmit}
clearButtonMode="while-editing"
/>
Run Code Online (Sandbox Code Playgroud)
Nim*_*nya 21
好的,找到了解决方案.
<TextInput
style={styles.additionalTextInput}
multiline={true}
autoCapitalize="sentences"
autoCorrect={true}
onChangeText={(orderInstructions) => this.setState({orderInstructions})}
keyboardType="default"
returnKeyType="done"
onKeyPress={this.handleKeyDown}
placeholder="Enter text here..."
/>
handleKeyDown: function(e) {
if(e.nativeEvent.key == "Enter"){
dismissKeyboard();
}
},
Run Code Online (Sandbox Code Playgroud)
dismissKeyboard方法来自react-native-dismiss-keyboard.
这对我来说非常适合.
如果您使用 with multiline={true},该return键还会在调用 之前在文本中添加换行符onSubmitEditing。此外,键盘不会自动关闭,让您import { Keyboard } from 'react-native'调用Keyboard.dismiss()onSubmitEditing。
一个更简单的解决方案是使用blurOnSubmit={true}自动关闭键盘并防止return键注册为newline.
| 归档时间: |
|
| 查看次数: |
30507 次 |
| 最近记录: |