美文网首页
setWebClient与setWebChromeClient之

setWebClient与setWebChromeClient之

作者: 柠檬不萌只是酸9 | 来源:发表于2017-05-10 14:51 被阅读0次

setWebClient与setWebChromeClient之间的区别

android.webkit库聚合了webkit内核的浏览器功能,webview就是她的一个控件,可以使得网页轻松的内嵌到app里。

并且比较强大的是,还可以直接跟js相互调用。

webview有两个方法:setWebChromeClient和setWebClient

setWebChromeClient主要处理解析,渲染网页等浏览器做的事情

WebChromeClient是辅助WebView处理JavaScript的对话框,网站图标,网站title,加载进度等

onCloseWindow(关闭WebView)

onCreateWindow()

onJsAlert (WebView上alert是弹不出来东西的,需要定制你的WebChromeClient处理弹出)

onJsPrompt

onJsConfirm

onProgressChanged

onReceivedIcon

onReceivedTitle

比如可以添加进度条,使得界面更友好

webview1.setWebChromeClient(newWebChromeClient()        {publicvoidonProgressChanged(WebView view,intprogress)              {                  setProgress(progress * 100);if(progress == 100){                        imageView1.setVisibility(View.GONE);                    tv1.setVisibility(View.GONE);                    pb1.setVisibility(View.GONE);                    fy1.setVisibility(View.GONE);                }            }        }        );

WebViewClient就是帮助WebView处理各种通知、请求事件的,具体来说包括:

onLoadResource

onPageStart

onPageFinish

onReceiveError

onReceivedHttpAuthRequest

例如:

webview1.setWebViewClient(newWebViewClient() {publicvoidonReceivedError(WebView view,interrorCode, String description, String failingUrl)

{//Handle the error

Toast.makeText(getApplicationContext(), "网络连接失败 ,请连接网络。", Toast.LENGTH_SHORT).show();

}publicbooleanshouldOverrideUrlLoading(WebView view, String url) { view.loadUrl(url);returntrue; } });//设置字符集编码

webview1.getSettings().setDefaultTextEncodingName("UTF-8");

webview1.loadUrl("http://www.android100.org/");

原文:http://blog.csdn.net/u014552288/article/details/23078447

相关文章

  • setWebClient与setWebChromeClient之

    setWebClient与setWebChromeClient之间的区别 android.webkit库聚合了we...

  • setWebChromeClient和setWebClient区

    npm Android.webkit库聚合了webkit内核的浏览器功能,webview就是她的一个控件,可以使得...

  • WebView的一点

    WebView 的 public void setWebChromeClient (WebChromeClient...

  • 解决部分WebView无法播放视频的情况

    webview 核心配置如下: webView.setWebChromeClient(newWebChromeCl...

  • java.lang.IllegalArgumentExcepti

    使用kotlin语言就会出现这个问题,实测是java并不会,看报错,把setWebClient方法直接注掉.运行成...

  • 执子之手 与子偕老

    执子之手 与之同行 执子之手 与之同食 执子之手 与之同进 执子之手 与之同出 执子之手 同心同德 执子之手 与之...

  • 闲读《随园诗话》(7)

    【原书卷二·四一】为人不可不辨者:柔之与弱也,刚之与暴也,俭之与啬也,厚之与昏也,明之与刻也,自重之与自大也,自谦...

  • 《敬》 敬 过往之星与月 敬 记忆之眉与眼 敬 伤痛之红与黑 敬 经历之劫与难 敬 苟且之皮与毛 敬 生活之进与往...

  • 2017-11-30

    稚童之纯心兮,无人与之相比! 弱冠之春秋兮,无人与之相伴! 崎岖之山路兮,无人与之相行!

  • 20190218

    结子之发,与子成家。会子之心,与子相印。 描子之眉,与子同归。绘子之容,与子情浓。 比子之肩,与子缱绻。逐子之步,...

网友评论

      本文标题:setWebClient与setWebChromeClient之

      本文链接:https://www.haomeiwen.com/subject/lvhgtxtx.html