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

Android WebView加载字符串类型的HTML

2016-11-15 18:34 183 查看
在解析json数据时,可能遇到text内容为html格式,所以需要用webview加载。
1、提取html内容为String
String html="";
<img src="http://qn.ieasy.tv/FqixuyWlFHZQW67i9S9vjsEJd8H4" alt="" />《爸爸去哪儿4》第五期周五在芒果TV爆笑上演,本期萌娃们来到宁夏中卫的南长滩村,感受西北大漠风情。本次蔡国庆与庆庆在张伦硕爸爸的帮助下终于摆脱“最低配置”的待遇,入住了村里的“总统套房”,第一次住好房子的庆庆特大方,立马邀请小安吉去他家住,让网友纷纷点赞:"庆庆真是个爱分享的暖心Boy!"<br /> <img src="http://qn.ieasy.tv/Fv-ABJh8lpwWTGn1beXrW858Db6N" alt="" />宁夏中卫站的旅程,萌娃奶爸们的住房条件延续一贯的原生态,此前住了牛棚、茅草房的庆爸为了给庆庆找个好房子,在一地羊粪中跟羊群奋战了半天,却运气不佳,反倒是“幸运星”张伦硕爸爸,三站都抢到“总统套房”。张伦硕爸爸不好意思一人独享豪宅,两度强烈让房,庆爸父子几次推让盛情难却,终于住了个像样点的房子,庆庆开心的摸摸姐姐小脸,特别感谢小伙伴的好意。但小伙伴安吉却因为选房问题被爸爸念叨,小男子汉罕见的流泪了,他们家一号房也挺“惨不忍睹”,对安吉就是双重打击。看着在抽泣的小伙伴,庆庆的毫不犹豫的说:“没关系,可以到我们四号来!”着急为小伙伴操心的样子可爱极了。<br /> <img src="http://qn.ieasy.tv/FpreOnz-I6tgb3TdlctWHrc_CByf" alt="" />不得不说,二十四孝老爸蔡国庆虽然宠庆庆,却用他儒雅的教育方式教出了个爱分享、有礼貌、有爱心的小“学霸”。这已经不是庆庆第一次主动帮助小伙伴了,新疆喀纳斯之行,庆庆也是主动帮小亮仔,给田亮叔叔找生火的材料,还贡献了个金点子:“牛粪可以生火!”,小脑瓜里不知道装了多少知识,连老爸都跟不上他的想象力。每次旅行新见到村长叔叔,都能听到庆庆响亮声音:“村长叔叔好!”湘西红石林站,庆庆卖劳动果实赚的钱毫不犹豫给村里的小伙伴们买了书做礼物,脚受伤了也不吭声,一点也没有小奶娃的骄纵之气。<img src="http://qn.ieasy.tv/FmTFdD5K08LQPYnPQvoeWw9CKELh" alt="" /><img src="http://qn.ieasy.tv/FoOIn8v4MHXkaYNrSz12yQ7_WgEB" alt="" /><img src="http://qn.ieasy.tv/FlbLzK9G0VRlC52utd2MpER7nhet" alt="" /><img src="http://qn.ieasy.tv/FooN2jU4bK1lh3JW0n2R4PoNIasJ" alt="" /><img src="http://qn.ieasy.tv/FvusDjAGFMUMFEobn8O35zl9BCky" alt="" /><img src="http://qn.ieasy.tv/FoCSvJF8_SN7RXykjxPdyRWJuxkF" alt="" /><img src="http://qn.ieasy.tv/FgAk4vkN15m6_8qfP0xyDQHcuT2F" alt="" />
(上段内容借用其他新闻内容)

2、实例化WebView控件

private WebView webView;
webView= (WebView) findViewById(R.id.(id));
3、将字符串内用添加到WebView的方法中
//添加内容并设置编码,添加一些WebView的属性

webView.loadDataWithBaseURL(null,html,"text/html","UTF-8",null);

webView.getSettings().setJavaScriptEnabled(true);
webView.getSettings().setLoadsImagesAutomatically(true);
webView.getSettings().setJavaScriptEnabled(true);

webView.requestFocus();
webView.setWebViewClient(new WebViewClient(){
@Override
public boolean shouldOverrideUrlLoading(WebView view, String url) {

view.loadUrl(url);
return true;
}
});

4、解决图片不能自适应屏幕问题。

由于Android4.4以上WebView的部分方法无法使用,所以可以采取非常措施。

思路:使用css属性,直接将css属性添加进html文本中。

可以用java 中String类的replaceAll 方法,来替换html中的内容(前提是html内容被提取为String)

//替换html文本内容,设置图片自适应屏幕
String s = text.replaceAll("<img", "<img width='100%' style=/\"word-wrap:break-word; font-family:Arial ");
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  android webview