您的位置:首页 > 移动开发 > Android开发

Android WebView加载html文本时,图片太大不能适配屏幕

2016-11-22 17:43 1206 查看
有时候我我们用webview去显示后台返回给我的html代码时使用loadDataWithBaseURL 如果是纯文字没有什么关系 但是出现图片的话 可能就不出现不适配的现象 看起来就有点格格不入了

实现逻辑是这样的 通过Jsoup去修改其中img标签的属性 Jsoup是一个html处理的管理 多用于网络爬虫 虽然说使用Jsoup解决图片适配的问题有点大材小用了 但是实现的效果还是非常不错的

首页当然是使用导入框架啦

compile 'org.jsoup:jsoup:1.10.1'

然后方便统一管理新建一个HTMLFormat.java

package com.eagersoft.youzy.jg01.Util.HtmlFormat;

import org.jsoup.Jsoup;
import org.jsoup.nodes.Document;
import org.jsoup.nodes.Element;
import org.jsoup.select.Elements;

/**
* Created by Administrator on 2016/11/10.
*要注意包不要导错了
*/

public class HtmlFormat {

public static String getNewContent(String htmltext){

Document doc= Jsoup.parse(htmltext);
Elements elements=doc.getElementsByTag("img");
for (Element element : elements) {
element.attr("width","100%").attr("height","auto");
}

return doc.toString();
}
}

然后就是实现了 完美解决

mWebView.loadDataWithBaseURL(null, HtmlFormat.getNewContent(informationDto.getContent()),"text/html","utf-8",null);

效果图就不贴了 比较简单 自行脑补吧

文/lance_小超(简书作者)

原文链接:http://www.jianshu.com/p/1d318c0d3278

著作权归作者所有,转载请联系作者获得授权,并标注“简书作者”。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: