首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >ListView中的TouchableOpacity as Item仅在TextInput失去焦点后才会做出反应

ListView中的TouchableOpacity as Item仅在TextInput失去焦点后才会做出反应
EN

Stack Overflow用户
提问于 2015-12-15 21:41:20
回答 1查看 6K关注 0票数 14

我现在正在开发一个由TextInput和ListView组成的搜索组件。它从外部服务器加载其结果并相应地填充ListView。

还有一个关闭搜索组件的TouchableOpacity。

不幸的是,需要按两次键才能获得所调用的TouchableOpacity的onPress回调--一次让TextInput失去焦点,另一次触发回调。但是,如果我按下TouchableOpacity关闭搜索组件,或者如果我按下"react-native-scrollable-tab-view“组件的某个选项卡,它会立即做出反应,并且TextInput甚至会保持焦点不变。

所以,我想知道是否有人知道ListView由于其滚动功能而以某种方式消耗了触摸。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2015-12-15 21:41:20

ScrollView (和遗留的ListView)组件有一个适当的keyboardShouldPersistTaps,它有三个选项:

  • never (默认值),当键盘打开时,在焦点文本输入之外轻敲可关闭键盘。发生这种情况时,孩子将不会收到键盘不会自动解除的tap.
  • always,,滚动视图不会捕捉到轻击,但滚动视图的孩子会捕捉到taps.
  • handled,当轻击由孩子处理(或由祖先捕捉)时,键盘不会自动解除。

示例

代码语言:javascript
复制
<ScrollView keyboardShouldPersistTaps="always">
  // Your TextInput and Button here…
</ScrollView>

我将这个属性设置为true,它就可以正常工作了。=)

票数 34
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/34290787

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档