初识WebView控件

2016-11-22  本文已影响0人  已迁至知乎_此不再维护

工作需要,学习WebView控件,目前还没有在实际工作中使用,以此作为初识WebView控件的总结。

从《第一行代码》中可知:Android提供了一个WebView控件,借助它我们就可以在自己的应用程序里嵌入一个浏览器,从而非常轻松地展示各种各样的网页。WebView在后台帮我们处理好了发送HTTP请求、接受服务响应、解析返回数据,以及最终的页面展示这几步工作。
具体操作流程为:首先,在布局文件中放置WebView控件,并让其填充父容器;接着,在代码中找到该控件并进行相关配置,并设置要加载的网页的Url;最后,添加网络权限。

《疯狂Android讲义》讲解的关于WebView的知识点有三:

  1. 使用WebView浏览网页
  2. 使用WebView加载HTML代码
  3. 使用WebView中的JavaScript调用Android方法

使用WebView浏览网页
WebView的用法与普通ImageView组件的用法基本相似,它提供了大量方法来执行浏览器操作,例如如下常用方法:
Void goBack():后退
Void goForward():前进
Void loadUrl(String url):加载指定URL对应的网页
Boolean zoomIn():放大网页
Boolean zoomOut():缩小网页

使用WebView加载HTML代码
如果应用程序想重新对HTML字符串进行解析,当成HTML页面来显示,就需要使用到WebView控件。
WebView提供了一个loadData(String data,String mimeType,String encoding)方法,该方法可用于加载并显示HTML代码,但当加载包含中文的HTML内容时,WebView将会显示乱码。
WebView还提供了一个loadDataWithBaseURL(String baseUrl,String data,String mimeType,String encoding,String historyUrl)方法,该方法是loadData(String data,String mimeType,String encoding)的增强版,它不会产生乱码。
Data:指定需要加载的HTML代码
mimeType:指定HTML代码的MIME类型,对应HTML代码可指定为text/html
Encoding:指定HTML代码编码所用的字符集,比如GBK

使用WebView中的JavaScript调用Android方法
在WebView的JavaScript中调用Android方法之只要如下三个步骤:
调用WebView关联的WebSettings的setJavaScriptEnabled(true)启用JavaScript调用功能;
调用WebView的addJavascriptInterface(Object object,String name)方法将object对象暴露给JavaScript脚本;
在JavaScript脚本中通过刚才暴露的name对象调用Android方法。

这些内容只是最基本的用法,因此我又尝试着阅读Android官方文档对WebView的介绍。

上一篇下一篇

猜你喜欢

热点阅读