【问题标题】:Render component after keyboard closes or listen to keyboard close event in react app in cordova android键盘关闭后渲染组件或在cordova android的反应应用程序中收听键盘关闭事件
【发布时间】:2021-12-26 14:49:38
【问题描述】:

我正在使用 cordova 将“正在进行中的”react.js 应用程序迁移到 Android 应用程序。 一切似乎都工作正常,除了一个组件在键盘关闭时不会呈现自己,该组件通常看起来像这样。

现在,当您单击输入并关闭它时,视图会重新渲染得很好:

但是一旦你填充它并关闭键盘,组件就不会重新呈现自己:

组件就这样卡住了,简单的解决方案显然是通过再次设置状态来“强制渲染”,问题是我似乎无法找到一种方法来监听键盘的变化-cordova 应用程序,为什么当表单为空时组件会重新呈现自己,而在填充时却不会?

【问题讨论】:

    标签: javascript reactjs cordova cordova-plugins


    【解决方案1】:

    希望这可以帮助某人: 在component: 为窗口调整大小事件添加一个空回调。

    useEffect(() => {
            window.onresize = function(){
                //console.log("resizing");
            };
        }, []);
    

    以及添加到cordova config.xml: 在widget tab里面 xmlns:android="http://schemas.android.com/apk/res/android" 作为属性

    和:

    <edit-config file="AndroidManifest.xml" mode="merge" target="/manifest/application/activity">
        <activity android:configChanges="orientation|keyboardHidden" android:windowSoftInputMode="adjustResize" />
        </edit-config>
    

    作为小部件的内容。

    还有: &lt;meta name="viewport" content="width=device-width, height=device-height, initial-scale=1.0, maximum-scale=1.0, target-densityDpi=device-dpi" /&gt;

    public/index.html&lt;head/&gt;

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2021-06-29
      • 2015-06-26
      • 2014-07-31
      • 2012-02-24
      • 2023-03-16
      • 2023-03-25
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多