React native 如何在视图中点击提交按钮而不必先关闭键盘?

React native 如何在视图中点击提交按钮而不必先关闭键盘?,react-native,keyboard,textinput,onsubmit,React Native,Keyboard,Textinput,Onsubmit,我正在使用react native实现社区提要。在feed中的每个帖子中,我都可以评论如下 然而,问题是在我输入评论并想按下右侧的提交图标后,键盘将首先关闭,然后我才能点击图标提交文本 问题: 我如何在按下提交图标后立即提交文本而不点击两次(一次关闭键盘,第二次提交) 下面是我的实现的一个片段: //注释代码部分/框 <View style={styles.commentSectionContainer}> <View style={[textInputStyle.d

我正在使用react native实现社区提要。在feed中的每个帖子中,我都可以评论如下

然而,问题是在我输入评论并想按下右侧的提交图标后,键盘将首先关闭,然后我才能点击图标提交文本

问题: 我如何在按下提交图标后立即提交文本而不点击两次(一次关闭键盘,第二次提交)

下面是我的实现的一个片段: //注释代码部分/框

<View style={styles.commentSectionContainer}>
    <View style={[textInputStyle.dark, textInputStyle.compact]}>
      <LocalizedTextInput
        multiline={false}
        autoCorrect={true}
        onChangeText={onCommentTextChange}
        placeholder="placeholder/writeComment"
        style={[textInputStyle.default, {fontSize: 13}]}
        underlineColorAndroid="transparent"
        value={textComment}
        onSubmitEditing={() => {
          if (textComment) {
            onSubmitComment();
          }
        }}
        returnKeyType="send"
     />
     <View style={styles.iconSubmitContainer}>
      <IconButton style={styles.commentSubmit} iconName="send" isDisabled={textComment === ''} onPress={onSubmitComment} hitSlop={hitSlop} />
    </View>
  </View>
</View>

{
如果(文本注释){
onSubmitComment();
}
}}
returnKeyType=“发送”
/>
本地化文本输入使用以下文本输入

<View style={{flex: 1}}>
  <TextInput
    multiline={multiline}
    style={[defaultStyle, {flex: 1}]}
    underlineColorAndroid="transparent"
    autoCorrect={true}
    {...otherProps}
  />
</View>

这些帖子都包装在一个滚动视图中


我尝试使用“keyboardShouldPersistTaps”和keyboardDismissMode=“Drag-on”,但它并没有产生预期的体验。。用户应该能够通过点击textinput框外的任何位置来关闭键盘,而不需要滚动。

正如Ankit所建议的,需要将道具传递到滚动视图,但如果这不能提供所需的结果,textinput有一个blur()方法,您可以使用该textinput的ref调用该方法。也许这会有帮助。

正如Ankit所建议的,需要将道具传递到滚动视图,但如果这不能提供所需的结果,TextInput有一个blur()方法,您可以使用该TextInput的ref调用该方法。也许这会有帮助。

如果你的父母是一个
滚动视图
组件,那么传递道具
键盘shouldPersistTaps=“always”
就可以了。请参阅官方文档。

如果您的家长是一个
ScrollView
组件,那么传递道具
键盘shouldPersisttaps=“always”
应该可以做到这一点。请参阅官方文档。

您在何处添加了“keyboardShouldPersistTaps”。是否存在正在渲染此组件的scrollview组件。我们应该在scrollview中添加“keyboardShouldPersistTaps”。您在哪里添加了“keyboardShouldPersistTaps”。是否存在正在渲染此组件的scrollview组件。我们应该在scrollview中添加“keyboardShouldPersistTaps”。