关于WebView的loadData方法

Author : Aoyousatuo Zhao

http://blog.sina.com.cn/aoyousatuo

WebView是Android应用开发中常用的组件,我们可以通过它来显示网页或者html格式的String数据.

对于后者我们往往使用loadData方法来加载html数据。下面就笔者的实践来讨论一下WebView的loadData方法。

对于loadData方法,ADK中的介绍为Load
the given data into the WebView. This will load the data into WebView using the data: scheme. Content loaded through this mechanism does not have the ability to load content from the network.即,loadData主要被设计用来装载URI格式的数据,它不能通过网络来加载内容。使用的过程中笔者遇到并且解决了两个问题。

1.      经过实践,笔者发现,loadData不能加载图片内容,如果要加载图片内容或者获得更强大的Web支持请使用loadDataWithBaseURL。

2.      许多实用loadData方法的朋友都遇到显示乱码的问题,那是因为编码器设置错误导致的。我们知道String类型的数据主要是unicode编码,而WebView一般为了节省资源使用的是UTF-8编码,所以我们在loadData的时候要告诉方法怎样转码。即要告诉它要将unicode编码的内容转成UTF-8编码的内容。有些朋友虽然在loadData的时候设置了编码方式,但是还是显示乱码,这是因为还需要为WebView的text编码指定编码方式。举例如下:

WebView
wv = (WebView)findViewById(R.id.webview) ;

String
content = getUnicodeContent() ;

wv.getSettings().setDefaultTextEncodingName(“UTF -8”)
;

wv.loadData(content,
“text/html”, “UTF-8”) ;

最新文章

  1. !+"\v1" 能判断浏览器类型吗?
  2. 清空SQL Server数据库中所有表数据的方法(转)
  3. SVN版本更新后,upData工程之后,Xcode 工程文件打不开解决办法
  4. 安装rkhunter
  5. 0330 复利程序c语言版转java版 会逐渐更进版
  6. 理解OAuth 2.0 -摘自网络
  7. Filebeat中文指南
  8. docker搭建基础的tomcat应用
  9. php json_decode返回失败的排查
  10. 树莓派小车(三)Python控制小车
  11. vue+axios访问本地json数据踩坑点
  12. Flink知识点
  13. xshell 评估过期
  14. [转]numpy中的np.max 与 np.maximum区别
  15. android开发之GestureDetector手势识别(调节音量、亮度、快进和后退)
  16. windows下nvm安装node之后npm命令找不到问题解决办法
  17. Android wifi无线调试App新玩法ADB WIFI
  18. regular expression 练习
  19. Application可以被重用,从哪里看出来的?
  20. JS扫雷原理性代码

热门文章

  1. 集合排序Comparable和Comparator有什么区别?
  2. 「CH2201」小猫爬山 解题报告
  3. list绑定
  4. C#反射与特性(五):类型成员操作
  5. css写斜角
  6. Scala与Mongodb实践2-----图片、日期的存储读取
  7. c++快读与快输模板
  8. P3369 【模板】普通平衡树 01Trie树
  9. python shutil 文件(夹)的复制、删除、移动、压缩和解压
  10. .Net Core2.*学习手册