React Native TextInput blur消耗TouchableHighlight按事件

时间:2016-02-22 00:01:09

标签: ios react-native

当我点按红色的“发布”按钮<TextInput>时,我想要提交<TouchableHighlight>。当TextInput聚焦时,我完成输入并点击Post按钮,键盘关闭但按钮没有注册水龙头。

我尝试使用TextInput onBlur事件,但它没有给我触点的坐标,所以我不知道触点是否实际上是在按钮上。

screenshot

2 个答案:

答案 0 :(得分:20)

您需要将属性keyboardShouldPersistTaps = {true}添加到ScrollView。

以下是docs所说的内容:

  

keyboardShouldPersistTaps bool:

     

当为false时,点击聚焦文本输入之外的时间   键盘正在关闭键盘。如果为true,则滚动视图将为   没有抓住水龙头,键盘不会自动解除。该   默认值为false。

答案 1 :(得分:7)

@frank,我想你找到了一个可行的解决方案,但除了“KeyboardShouldPersistTaps”之外,如果你将视图包装在一个带有调用dismissKeyboard的onPress的TouchableWithoutFeedback元素中,它应该解决问题。 / p>

 <ScrollView keyboardShouldPersistTaps={true} ref='scrollView'>
   <TouchableWithoutFeedback onPress={dismissKeyboard}>
     <View>
     -View Content-
     </View>
  </TouchableWithoutFeedback>
</ScrollView>