Android-使用WebView视图显示网页

5 篇文章 0 订阅
1 篇文章 0 订阅

简介

Android提供了WebView组件(相关类为android.webkit.WebView、android.webkit.WebViewClient)。表面上来看,这个组件与普通的ImageView差不多,但实际上,这个组件的功能要强大得多,WebView本身就是一个浏览器实现!它的内核基于WebKit引擎(怪不得包名是webkit)。如果我们队WebView进行一些美化,包装,可以非常轻松地开发出自己的浏览器。

WebView的API

WebView提供了大量方法来执行浏览器操作,如:

void goBack() //后退
void goForward() //前进
void loadUrl(String url) //加载指定url对应的网页
boolean zoomIn()
boolean zoomOut() //放大/缩小网页

实例

实例参考微信抢红包插件
界面如图:

基本用法

直接在Activity中定义一个WebView

WebView webView = new WebView();
webView.loadData("balala", "text/html", "utf-8");

webView.loadDataWithBaseURL(null, "balabla", "text/html", "utf-8", null);

即可在Activity中显示解析过的html。

使用WebView中的JavaScript调用Android平台的方法

很多时候,WebView加载的页面上是带JavaScript脚本的。为了让WebView中的JavaScript脚本调用Android方法,WebView提供了一个配套的WebSettings工具类,该工具类提供了大量方法来管理WebView的选项设置
在Activity中定义一个WebSettings。

//先获取WebView的设置对象
WebSettings webSettings = webView.getSettings();
//开启JavaScript调用
webSettings.setJavaScriptEnabled(true);
//将MyObject对象暴露给JavaScript脚本:这样test.html页面中的JavaScript可以通过`myObj`来调用MyObject中的方法。

如MyObject中有:

public void showToast(String name){
    Toast.makeText(...).show();
}

然后在text.html页面中即可

<input type ="button" value = "打招呼" onclick="myObj.showToast('孙悟空')">

来调用Android中的MyObject的showToast()方法了

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值