android开发中对html内容的显示

android开发中对html内容的显示

ID:31428648

大小:105.00 KB

页数:5页

时间:2019-01-09

android开发中对html内容的显示_第1页
android开发中对html内容的显示_第2页
android开发中对html内容的显示_第3页
android开发中对html内容的显示_第4页
android开发中对html内容的显示_第5页
资源描述:

《android开发中对html内容的显示》由会员上传分享,免费在线阅读,更多相关内容在学术论文-天天文库

1、Android开发中对HTML内容的显示  摘要随着Android科技的发展,手机客户端接受了更多的HTML内容。本文作者采用WebView直接显示法结合人机交互的原则,从用户体验的角度解析传入的HTML内容,显示出完整的图文内容。  关键词Android;HTML标签;WebView  中图分类号TN91文献标识码A文章编号1674-6708(2015)145-0049-01  Android智能手机已经在我们现实生活中无处不在,成为我们生活中不可或缺的一部分,Android应用充斥和丰富着我们的生活。随着互联网的发展和手机网

2、速的提升Android客户端获取网络的信息资源已是稀松平常,获取的信息中带有HTML内容是必不可少的,如果把HTML标记去掉很大程度上会破坏资源的完整性,即便获取了资源内的文字但文字的样式也会消失,资源内的链接和图片同样会消失。在这种形势下Android客户端对HTML内容的解析就是大势所趋。  1方法介绍  Android对HTML内容解析主要有四种方法:1)Java正则表达式过滤法,Java正则表达式(RegularExpression)就是一个字符构成的串,这个方法可以搜索提取出任何你想要的字符串,只要找到一个符合要求的正

3、则表达式就可以过滤去除HTML标签;2)jsoup解析器解析法,jsoup是一款Java的HTML5解析器,可直接解析某个URL地址、HTML文本内容等。它提供了一套非常省力的API,可通过DOM,CSS以及类似于jquery的操作方法来取出和操作数据;3)TextView自带类解析法,Android提供了android.text.Html类和Html.ImageGetter、Html.TagHandler接口,格式化字符串为HTML样式处理后再在TextView中显示;4)WebView直接显示法,Android提供了方便非格

4、式化方法不需要转码直接在WebView中显示。  2实际解决方案  2.1需求分析  本人在承担河北省大学生创新项目《“互联网+”下毕业设计评价系统》中遇到了在Android客户端显示HTML内容的问题。在通知公告二级页面中,主体显示通知公告的具体内容,通知公告的内容是从后台数据库中读取,数据库中通知内容字段存储的既有文字还有HTML标签,这两者组成了整体。在手机客户端正确合理显示HTML内容成为了本界面的一个关键。  2.2解决方案  作者首先采用了Java正则表达式过滤法,用过滤HTML标签的正则表达式(“]*)>”5)过滤

5、去除HTML标签,只得到了内容中的文字但HTML标签的功能由于被剔除而消失,段落格式、图片、链接等内容无法显示。jsoup选择器选择出img标签来单独显示图片,但是这种方法就破坏了文字和图片的整体性,降低了用户体验不利于人机交互。TextView自带类解析法可以使HTML内容中的文字和图片整体显示,并且解析后文字拥有原有的段落格式和颜色,解析后若文字过小或者图片过大,这很大程度上会影响用户体验,并且TextView是不支持缩放,这就需要一种更人性化的解析方式。  作者采用了WebView直接显示法,优势主要有两个,一是可以轻松更

6、改需要展现的内容(包括样式),二是可以实现部分功能的跨平台。WebView加载HTML代码的方法主要有:1)WebView.loadUrl(Stringstrhtml)方法;2)WebView.loadData(Stringdata,StringmimeType,Stringencoding)方法;3)loadDataWithBaseURL()方法。  作者采用了第三种方法显示HTML内容:loadDataWithBaseURL(StringbaseUrl,Stringdata,StringmimeType,Stringenco

7、ding,StringhistoryUrl),在baseUrl的赋值上,并非要传一个Url参数,因为它只是一个标志位,用来标志当前页面的Key值。historyUrl为value值,在加载时,它会把baseUrl和historyUrl传到List列表中,当作历史记录来使用,当前进和后退时,它会通过baseUrl来寻找historyUrl的路径,通过加载historyUrl路径来加载历史界面。使用这种方法不需要先将HTML内容进行转码,直接可以显示。实例代码:webView.loadDataWithBaseURL(null,mas

8、sage,“text/html”,“utf-8”,null),massage为作者从数据库中获得HTML内容字段,并非获取字段后直接传入到loadDataWithBaseURL()方法中,需要对HTML标签进行路径补全处理。5  HTML标签是由众多功能标签组成

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。