Android 13 WebView编辑时图片变为obj问题求助
Android 13 WebView contenteditable模式下图片显示为obj的解决方案
针对Android 13中WebView开启contenteditable="true"后图片变为obj的问题,提供以下几个可行的解决方向:
强制指定图片的尺寸与可编辑属性
Android 13的WebView编辑引擎可能对未明确设置尺寸的图片进行了默认处理,导致显示异常。给<img>标签设置固定或相对尺寸,同时添加contenteditable="false"让图片不可编辑,避免进入编辑状态时被修改:<img src="your-image-path" width="100%" height="auto" contenteditable="false" />关闭WebView的自动缩放相关设置
Android 13调整了编辑模式下的缩放逻辑,关闭自动缩放功能可以避免图片被异常处理。初始化WebView时添加以下配置:WebSettings webSettings = webView.getSettings(); webSettings.setSupportZoom(false); webSettings.setBuiltInZoomControls(false); webSettings.setDisplayZoomControls(false); webSettings.setLoadWithOverviewMode(true); webSettings.setUseWideViewPort(true);通过JS重置图片样式
在WebView进入或退出编辑状态时,执行JS代码强制重置图片样式,覆盖WebView的默认处理逻辑:webView.setOnEditorActionListener((v, actionId, event) -> { if (actionId == EditorInfo.IME_ACTION_DONE || (event != null && event.getKeyCode() == KeyEvent.KEYCODE_ENTER)) { webView.evaluateJavascript( "document.querySelectorAll('img').forEach(img => { img.style.width = '100%'; img.style.height = 'auto'; });", null ); return true; } return false; });更新WebView版本
该问题可能是Android 13系统WebView的版本bug,尝试通过Google Play更新Android System WebView到最新版本,或在应用中集成最新的Chrome WebView组件,大概率能修复这类兼容性问题。
内容的提问来源于stack exchange,提问作者Slava
相关产品推荐
相关产品推荐

