public voidloadData(Stringdata,StringmimeType,Stringencoding)

loadData() 中的htmldata中不能包含'#', '%', '\', '?'四中特殊字符,出现这种字符就会出现解析错误,显示找不到网页还有部分html代码。因为css中经常用'#', '%'等字符,所以大部分网页会出现解析错误,需要如何处理呢?我们需要用UrlEncoder编码为%23, %25, %27, %3f 。

webView.loadData(URLEncoder.encode(data, "utf-8"), "text/html", "utf-8");这样写之后会发现错误没有了,但是显示效果不好,一些背景颜色排版效果都没有了,如空格都变成了加号。

推荐使用loadDataWithBaseURL():public voidloadDataWithBaseURL(StringbaseUrl,Stringdata,StringmimeType,Stringencoding,StringhistoryUrl)

只是多了两个参数,我们可以这样使用webView.loadDataWithBaseURL(null,data, "text/html", "utf-8", null);这样html代码就会完美解析了。

注意,访问网络要在配置文件中加上权限webView.getSettings().setJavaScriptEnabled(true); 让WebView支持JavaScript。

更多相关文章

  1. Android(安卓)activity 参数传递
  2. Android第三方开源FloatingActionButton(com.getbase.floatingact
  3. Android(安卓)-- NDK开发入门
  4. Android调试错误-No resource identifier found for attribute '
  5. Android之WebView控件简单使用总结
  6. Android动画(一)Interpolator
  7. 〖Android〗联想K860 logcat CM11.0出错信息及解决
  8. Android(安卓)使用xliff 格式化字符串
  9. Android软件盘(EditText)的搜索功能

随机推荐

  1. Android App 启动流程梳理(基于 Android 1
  2. Android菜鸟的成长笔记(14)—— Android中
  3. android自定义checkBox的样式
  4. 【重拾Android】(2)SQLite数据库与数据持
  5. Android群英传笔记——第六章:Android绘图
  6. Android绘图机制(三)——自定义View的实现
  7. Android的任务栈task stack
  8. android 代码优化(2)
  9. 帮助ADT改进DDMS中的Logcat中文乱码问题
  10. Android So简单加固