webview用法

android.webkit库聚合了webkit内核的浏览器功能,webview是它的一个控件,可以使网页轻松的内嵌到app里,还可以直接跟js相互调用。

webview有两个方法:setWebChromeClient和setWebClient

WebviewClient:帮助WebView处理各种通知、请求事件。

回调函数讲解:

1、public boolean shouldOverrideUrlLoading(WebView view, String url){ 
      view.loadUrl(url);
      return true;
  }
  在点击请求的是链接是才会调用,重写此方法返回true表明点击网页里面的链接还是在当前的webview里跳转,不跳到浏览器那边.

  默认返回:return super.shouldOverrideUrlLoading(view, url); 这个返回的方法会调用父类方法,也就是跳转至手机浏览器,

  平时写webview一般都在方法里面写 webview.loadUrl(url)
  返回: return true; webview处理url是根据程序来执行的。
  返回: return false; webview处理url是在webview内部执行。

 

2、public void onReceivedSslError(WebView view, SslErrorHandlerhandler, android.net.http.SslError error) {
handler.proceed();
}
重写此方法可以让webview处理https请求。

 

3、public boolean shouldOverrideKeyEvent(WebView view, KeyEventevent) {
           return super.shouldOverrideKeyEvent(view, event);
       }
    }
重写此方法才能够处理在浏览器中的按键事件。

 

4、 public void onLoadResource(WebView view, String url) {
           // TODO Auto-generated method stub
           if (DEBUG) {
               Log.d(TAG, " onLoadResource ");
           }
           super.onLoadResource(view, url);
       }
在加载页面资源时会调用,每一个资源(比如图片)的加载都会调用一次。

 

 

5、 public void onPageStarted(WebView view, String url, Bitmapfavicon) {
           // TODO Auto-generated method stub
           if (DEBUG) {
               Log.d(TAG, " onPageStarted ");
           }
          if (url.endsWith(".apk")) {
                   download(url);//下载处理
            }
           super.onPageStarted(view, url, favicon);
       }
在页面加载开始时调用。



 

6、public void onPageFinished(WebView view, String url) {
           // TODO Auto-generated method stub
           if (DEBUG) {
               Log.d(TAG, " onPageFinished ");
           }
           super.onPageFinished(view, url);
       }
在页面加载结束时调用。




  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值