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

有时候我我们用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_小超
    原文地址: https://www.jianshu.com/p/1d318c0d3278
    本文转自网络文章,转载此文章仅为分享知识,如有侵权,请联系博主进行删除。
点赞