Android WebView.loadData加载HTML内容被截断问题求助
Android WebView加载HTML内容被截断的解决办法
1. 先修正最明显的错误:MIME类型写错了
你代码里写的text/plane; charset=utf-8是笔误,应该是text/html——WebView把HTML当成纯文本处理,不仅会渲染异常,也可能触发截断逻辑。
2. 替换loadData为loadDataWithBaseURL
loadData方法本身有内容长度限制(不同Android版本阈值不同,你的9万多字符大概率超过了),换成loadDataWithBaseURL就能解决这个问题,它对内容长度的限制宽松得多。
修改后的代码示例:
String html = readFile("index.html"); // 替换loadData为loadDataWithBaseURL,修正MIME类型 webView.loadDataWithBaseURL(null, html, "text/html", "utf-8", null); T.setText(html);
3. 额外检查点
- 确保读取本地文件时用的是UTF-8编码,避免乱码导致的渲染异常;
- 如果页面包含JavaScript,要在WebView设置里开启:
webView.getSettings().setJavaScriptEnabled(true); - 若涉及本地资源访问,可开启文件访问权限:
webView.getSettings().setAllowFileAccess(true);
内容的提问来源于stack exchange,提问作者Юрій Писанка
相关产品推荐
相关产品推荐

