React Native - 有没有办法完全隐藏键盘?

问题描述 投票:0回答:1

我正在开发一个扫描设备的应用程序,它完全不使用虚拟键盘,所以目前,我只在用户想要打开键盘时才显示键盘(通过点击键盘图标)。

Virtual Keyboard opened

再用tab关闭虚拟键盘。

Virtual Keyboard closed .

然而,当我通过硬键盘输入(从PC扫描设备)或点击输入,虚拟键盘仍然显示出来,没有办法阻止。

onKeyPress={() => {
  Keyboard.dismiss();
}}

但它仍然会产生一个恼人的打开-关闭虚拟键盘的动画。有什么办法可以停止这个动画或完全隐藏虚拟键盘?

react-native react-native-android virtual-keyboard android-virtual-keyboard
1个回答
1
投票

这是一个 已知限制 的React Native。你可以尝试禁用指针事件,如下所示,但我不确定这是否会阻止物理键盘创建事件,你将失去文本滚动。

    <View pointerEvents="none">
      <Input
        value={String(value)}
        placeholder={placeholder}
      />
    </View>

0
投票

文本输入选择(焦点)会触发键盘。如果你不想让键盘打开,就不要使用输入。

这可能是你设计中的一个 "缺陷"。你是在TextInput的值中显示内容。为什么不直接使用不同的组件来显示内容,而只使用文本输入来进行用户输入。

或者你可以等待这个 发出 要处理。

© www.soinside.com 2019 - 2024. All rights reserved.