Chinaunix首页 | 论坛 | 博客
  • 博客访问: 449495
  • 博文数量: 145
  • 博客积分: 0
  • 博客等级: 民兵
  • 技术积分: 1060
  • 用 户 组: 普通用户
  • 注册时间: 2013-08-22 11:52
个人简介

专注计算机技术: Linux Android 云计算 虚拟化 网络

文章分类

全部博文(145)

文章存档

2016年(3)

2015年(21)

2014年(75)

2013年(46)

我的朋友

分类: Android平台

2013-11-04 11:19:53

       在开发Android平台的互联网应用时,经常会使用到WebView,好处主要有两个,一是方便随时更改要展现的内容(包括样式),二是可以实现部分功能的跨平台。

       Android的WebView组件使用非常简单,可以使用loadUrl()加载一个Url地址,也可以使用loadData()或 loadDataWithBaseURL()加载一段HTML代码片段。loadUrl()的使用大家应该都没有什么问题,但是loadData()和 loadDataWithBaseURL()在使用上的差异可能有些人还不太清楚。

       首先,从方法的定义来看:

loadData (String data, String mimeType, String encoding)

loadDataWithBaseURL (String baseUrl, String data, String mimeType, String encoding, String historyUrl)

       loadDataWithBaseURL()比loadData()多两个参数,可以指定HTML代码片段中相关资源的相对根路径,也可以指定历史Url。两个方法的其余三个参数相同。

       其次,两个方法加载的HTML代码片段有些不同,loadData()中的html data中不能包含'#', '%', '\', '?'四中特殊字符,这就为我们内嵌css等制造了些许麻烦,因为css中经常用'#', '%'等字符,需要如何处理呢?我们需要用UrlEncoder编码为%23, %25, %27, %3f 。

阅读(1699) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~