我正在构建一个包含TextInput
和ListView
视图的React Native应用。
它的工作方式是TextInput获得焦点时 - 键盘打开,用户可以过滤ListView中的数据。
所需的功能是,如果用户点击/选择列表视图中的行,则应检测到点击并调用方法。
问题:
当键盘打开时,点击列表视图会关闭键盘,行将检测到第二次点击(点击事件不会传播到ListView行)。
知道如何通过onPress方法检测第一次点击?
提前感谢您的帮助。
答案 0 :(得分:8)
您需要将属性keyboardShouldPersistTaps={always}
添加到ScrollView。
以下是文档的说法:
<强> keyboardShouldPersistTaps 强>
确定点击后键盘何时保持可见。
'never'
(默认设置),在键盘启动时点击聚焦文本输入外部,取消键盘。发生这种情况时,孩子们不会收到水龙头。
'always'
,键盘不会自动关闭,滚动视图将&gt;没有抓住水龙头,但滚动视图的孩子可以抓住水龙头。
'handled'
,当孩子处理水龙头时(或由祖先捕获),键盘不会自动解除。
false
,弃用,使用&#39;从不&#39;代替
true
,弃用,使用&#39;始终&#39;代替