Android WebViewClient 概述

WebViewClient主要负责帮助WebView处理各种通知和请求事件。下面介绍一下开发工作中常用到的方法:

// 页面开始加载时回调
@Override
public void onPageStarted(WebView view, String url, Bitmap favicon) {
    super.onPageStarted(view, url, favicon);
}
// 页面加载结束时回调
@Override
public void onPageFinished(WebView view, String url) {
    super.onPageFinished(view, url);
}
// 拦截到请求后回调。覆写此方法返回true表示在此webview中跳转。
public boolean shouldOverrideUrlLoading(WebView view, WebResourceRequest request) {
    return super.shouldOverrideUrlLoading(view, request);
}
// 在加载页面资源时调用,每一个资源的加载都会调用一次。
@Override
public void onLoadResource(WebView view, String url) {
    super.onLoadResource(view, url);
}
// 请求资源的时候调用,在非UI线程中执行
@Override
public WebResourceResponse shouldInterceptRequest(WebView view, WebResourceRequest request) {
    return super.shouldInterceptRequest(view, request);
}
//拦截并处理在浏览器中的按键事件
@Override
public boolean shouldOverrideKeyEvent(WebView view, KeyEvent event) {
    return super.shouldOverrideKeyEvent(view, event);
}
//加载发生错误的时候会回调,可以在这里进行错误处理
@Override
public void onReceivedError(WebView view, WebResourceRequest request, WebResourceError error)
    super.onReceivedError(view, request, error);
}
// 当https请求发生错误时,可在这里进行处理
@Override
public void onReceivedSslError(WebView view, SslErrorHandler handler, SslError error) {
    super.onReceivedSslError(view, handler, error);
}
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • Android 自定义View的各种姿势1 Activity的显示之ViewRootImpl详解 Activity...
    passiontim阅读 173,663评论 25 708
  • WebView·开车指南 2016-08-31BugDev 北京市东城区首席Bug布道师开山之作,一整月交通事故血...
    53c021c38a1d阅读 853评论 0 1
  • WebView·开车指南 目录 WebView简介 WebView基本使用 WebView常用方法 WebSett...
    小庄bb阅读 3,552评论 3 25
  • WebView·开车指南 目录 WebView简介 WebView基本使用 WebView常用方法 WebSett...
    南城的人阅读 4,784评论 0 19
  • 我想象中爱情的样子,该是年少时相遇相识相知,年老时相依相伴相守!
    怪里怪气怪女孩阅读 202评论 0 0