gpt4 book ai didi

react-native - TouchableOpacity 作为 ListView 中的 Item 仅在 TextInput 失去焦点后才会 react

转载 作者:行者123 更新时间:2023-12-04 00:09:39 26 4
gpt4 key购买 nike

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

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

不幸的是,需要两次按下才能调用 TouchableOpacity 的 onPress 回调——一次让 TextInput 失去焦点,另一次触发回调。
但是,如果我按 TouchableOpacity 关闭搜索组件,或者如果我按“react-native-scrollable-tab-view”组件的选项卡之一,它会立即使用react,TextInput 甚至会保持其焦点。

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

最佳答案

ScrollView (和遗留 ListView )组件有一个 Prop keyboardShouldPersistTaps 这需要三个选项:

  • never (默认),当键盘向上时,在焦点文本输入之外点击会关闭键盘。发生这种情况时, child 将不会收到水龙头。
  • always ,键盘不会自动关闭, ScrollView 不会捕捉点击,但 ScrollView 的子级可以捕捉点击。
  • handled ,当点击被 child 处理(或被祖先捕获)时,键盘不会自动关闭。

  • 例子
    <ScrollView keyboardShouldPersistTaps="always">
    // Your TextInput and Button here…
    </ScrollView>

    我将此属性设置为 true,它按预期工作。 =)

    关于react-native - TouchableOpacity 作为 ListView 中的 Item 仅在 TextInput 失去焦点后才会 react ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34290787/

    26 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com