【问题标题】:React Native TextInput closes automatically when opened on androidReact Native TextInput 在android上打开时会自动关闭
【发布时间】:2022-08-24 10:52:12
【问题描述】:

我切换了笔记本电脑并克隆了我的项目的存储库,进行了快速的 yarn 安装,看起来它与主分支上的有很大不同,但我没有打扰,因为也许这只是因为不同的 Node 版本.

现在,每次我单击一个 TextInput 时,键盘只会在 android 上立即打开和关闭。我在这里附上了一个快速录音。尝试了一些解决方案,它看起来像在 AndroidManifest.xml 中将 android:windowSoftInputMode 从 adjustResize 切换到 adjustPan 解决了关闭问题,但我对应用程序中键盘设置为 adjustPan 时的行为并不满意.也许这个问题在不久前就开始发生了,但我现在才看到。

这只是一个以简单视图为中心的输入。 https://gfycat.com/ordinaryquestionabledinosaur

有什么建议吗?

  • 也许尝试添加包含您的问题的零食以获得更好的视力,因为这可能与您的代码有关
  • 我今天早上也开始面临这个问题,您找到任何解决方案@Cristain 吗?
  • @AshishGuleria 是的,我接受的答案解决了我的问题。

标签: react-native


【解决方案1】:

遇到了类似的问题,原来是 react-native-screens 库导致了这个问题。尝试将版本设置为“~3.10.2”。为我解决了。

【讨论】:

  • 在这件事上浪费了我半天的时间。谢谢。
  • 它给出了一个错误,即在 react-native-screens 中找不到 ./fabric
  • 像魅力一样工作......不要忘记添加'〜'。
  • 以前使用 npm 这对我不起作用,但是使用 yarn 它现在可以用于一些不同的项目。
  • 确保停止您的服务器并重新运行它以查看更改。简单的服务器刷新可能还不够。还可以考虑清除 gradle 缓存,您可以这样做:stackoverflow.com/questions/23025433/how-to-clear-gradle-cache
【解决方案2】:

更改 AndroidManifest.xml 中的行

老线android:windowSoftInputMode="adjustResize"

新队android:windowSoftInputMode="stateAlwaysHidden|adjustPan"

【讨论】:

  • 它对我有用,但你能解释一下它的作用吗?
  • 像魅力一样工作
【解决方案3】:

刚刚将 react-native-screen 升级到最新版本。

纱线添加反应原生屏幕

“反应原生屏幕”:“^3.13.1”

【讨论】:

  • 这并没有解决问题,回滚到 3.10.2 希望它能完成这项工作
【解决方案4】:

对于那些有同样问题的人来说,底部和顶部的填充通常会导致键盘在打开时自行关闭。花了一段时间才发现

【讨论】:

    【解决方案5】:

    如果您使用的是本机版本“0.64.*”。只需将 react-native-screens 版本设置为“3.4.0”。不要使用“^”来避免 npm 更新它。它对我有用。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2020-10-05
      • 1970-01-01
      • 2022-10-23
      • 1970-01-01
      • 2020-08-25
      • 2017-07-11
      • 1970-01-01
      相关资源
      最近更新 更多