![](/img/trans.png)
[英]react-native Keyboard.dismiss() not working after autofill on iOS
[英]Keyboard not being dismissed with Keyboard.dismiss in React Native
當用戶點擊鍵盤或輸入之外的任何地方時,我希望關閉鍵盤,但是當我點擊其他地方時鍵盤不會被關閉:
<TouchableWithoutFeedback style={styles.container} onPress={Keyboard.dismiss}>
<View style={styles.inputContainer}>
<TextInput
placeholder="Search Term"
style={styles.input}
onChangeText={setSearch}
value={search}
returnKeyType="search"
onSubmitEditing={handleSubmit}
/>
</View>
</ TouchableWithoutFeedback>
樣式非常標准:
container: {
flex: 1,
justifyContent: 'center',
alignItems: 'center',
},
inputContainer: {
position: 'absolute',
top: stackHeaderHeight + 10,
height: height * .1,
width: '100%',
flexDirection: 'row',
justifyContent: 'center',
alignItems: 'center',
},
你需要改變你的onPress
代碼TouchableWithoutFeedback
<TouchableWithoutFeedback style={styles.container} onPress={()=> Keyboard.dismiss()}>
</ TouchableWithoutFeedback>
示例工作代碼。
render() {
return (
<TouchableWithoutFeedback onPress={()=>Keyboard.dismiss()} >
<View style={{ flex: 1 }}>
<TextInput returnKeyType="search" style={{borderWidth:1,borderColor:'grey',marginTop:100,height:50,marginHorizontal:50}}/>
</View>
</TouchableWithoutFeedback>
);
}
我認為您的樣式屬性有問題。 請檢查您的container
和inputcontainer
樣式屬性。 如果您的render
方法中有任何ScrollView
,請添加以下內容
<ScrollView keyboardShouldPersistTaps='always'>
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.