ios - 在 ScrollView 中从一个 TextInput 轻敲到另一个 TextInput 不应关闭键盘

标签 ios react-native

我有一个 ScrollView 到 TextInput 控件。

<ScrollView contentContainerStyle={styles.container}>
    <TextInput style={styles.input}/>
    <TextInput style={styles.input}/>
</ScrollView>

单击 TextInput 时,键盘会按预期出现。如果我在 View 区域中的 TextInput 外部单击,键盘应该会消失,就像现在发生的那样。此外,我单击另一个 TextInput,键盘应保留在屏幕上。在屏幕上从一个 TextInput 移动到另一个时,需要单击或点击两次。

这类似于另一个StackOverflow question .当我实现问题中的答案时,点击 ScrollView 时键盘不会消失。

可以找到 RNPlay here .

最佳答案

ScrollView 上使用 keyboardShouldPersistTaps 应该移除点击其他 TextInput 时的关闭行为

<ScrollView contentContainerStyle={styles.container} 
            keyboardShouldPersistTaps ={true}>
  <TextInput style={styles.input}/>
  <TextInput style={styles.input}/>
</ScrollView>

但在 TextInput

之外单击时,它会禁用键盘关闭行为

考虑在 ScrollView 上添加点击监听器,当检测到点击时使用 react-native-dismiss-keyboard 隐藏键盘模块

关于ios - 在 ScrollView 中从一个 TextInput 轻敲到另一个 TextInput 不应关闭键盘,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38990484/

相关文章:

ios - Apple HealthKit - 后台更新未触发

ios - 是否可以在 CAKeyFrameAnimation 之后更新按钮的位置?

javascript - React-native 在设备上崩溃;致命信号 6 (SIGABRT)

ios - UICollectionViewCell 内的标签文本根据 if 语句和数组的值而变化

ios - 对象在传递给另一个 View Controller 时变为 null

ios - 带有编码器的 UIView init 导致递归

javascript - React Native Redux - 如何更新数组中的项目?

javascript - 如何从具有多个对象的平面列表中设置和获取不同的状态和输入

javascript - 如何在 React-native 的抽屉导航中刷新从第二个屏幕调用的先前抽屉屏幕?

ios - 如何更改托管博览会应用程序中的 Root View 背景?