uni-app 安卓最新版本3.1.22 webview input切换其他输入时底下会黑屏 底部被遮挡

uni-app 安卓最新版本3.1.22 webview input切换其他输入时底下会黑屏 底部被遮挡

操作步骤:

在安卓app-vue的webview页面,找个input点击,在键盘按钮选择其他输入,切换两次就会有底部被遮挡

预期结果:

切换其他输入,不会被遮挡

实际结果:

切换其他输入,底部被遮挡

bug描述:

图片

image

附件

8d8ad371598c9349bd6fe2cd6eb0404e.rar

信息类别 信息内容
产品分类 uniapp/App
PC开发环境 Windows
PC版本号 7
HBuilderX 正式
HBuilderX版本 3.1.22
手机系统 Android
手机版本号 Android 10
手机厂商 小米
手机机型 red mi 10x 5G
页面类型 vue
打包方式 云端
项目创建方式 HBuilderX

更多关于uni-app 安卓最新版本3.1.22 webview input切换其他输入时底下会黑屏 底部被遮挡的实战教程也可以访问 https://www.itying.com/category-93-b0.html

5 回复

demo示例发现

更多关于uni-app 安卓最新版本3.1.22 webview input切换其他输入时底下会黑屏 底部被遮挡的实战教程也可以访问 https://www.itying.com/category-93-b0.html


安卓,vue里面加个webview,里面有个input就会发现

回复 小七ing: 了解 我们排查一下

回复 DCloud_Android_ST: 好的!

这是一个已知的 uni-app 在 Android 平台上的 webview 输入框兼容性问题。当在 webview 中切换不同输入法时,键盘高度计算可能出现异常,导致底部内容被遮挡。

问题原因:

  • 键盘高度监听机制在输入法切换时未能及时更新
  • Webview 与原生键盘的交互存在时序问题
  • 不同输入法返回的高度信息不一致

临时解决方案:

  1. 在页面中添加键盘高度监听:
onLoad() {
    uni.onKeyboardHeightChange(res => {
        // 强制更新布局
        this.$nextTick(() => {
            // 可能的布局调整逻辑
        })
    })
}
  1. pages.json 中配置当前页面的 softinputMode
{
    "path": "pages/your-page",
    "style": {
        "app-plus": {
            "softinputMode": "adjustResize"
        }
    }
}
  1. 尝试在输入框失焦时手动触发布局重排:
methods: {
    handleBlur() {
        setTimeout(() => {
            window.scrollTo(0, document.body.scrollHeight)
        }, 100)
    }
}
回到顶部