android调用H5显示加载中效果的示例代码

2020-10-26 16:25:26 浏览数 (1)

我们在看有些应用在引入h5的时候经常会有一个进度条在转,显示加载的意思,那么这个东西其实一般是我们android端做的事(不要把所有的事都推给h5~~~),其实实现起来很简单,

ok 废话不多说,上代码吧

代码语言:javascript复制
wv.setWebViewClient(new WebViewClient() { 
               @Override 
               public void onPageStarted(WebView view, String url, Bitmap favicon) { 
                 super.onPageStarted(view, url, favicon); 
                 DialogUtils.showUpdateDialog(MainActivity.this, "加载中", "请稍后。。。"); 
               } 
 
               @Override 
               public void onPageFinished(WebView view, String url) { 
                 super.onPageFinished(view, url); 
                 DialogUtils.hideDialog(); 
               } 
 
               @Override 
               public void onReceivedError(WebView view, WebResourceRequest request, WebResourceError error) { 
                 super.onReceivedError(view, request, error); 
                 Toast.makeText(MainActivity.this, "网页加载错误,请稍后重试", Toast.LENGTH_SHORT).show(); 
               } 
 
               @Override 
               public boolean shouldOverrideUrlLoading(WebView view, String url) { 
                 return true; 
               } 
             } 

其中的onPageStarted 和 onPageFinished和onReceivedError是我们这次要用到的方法,可以直接看方法名就能知道什么意思了。

其中onPageStarted表示的是当我们加载开始时我们要做什么操作,很简单这个时候你就定义一个dialog来显示加载状态就好了 onPageFinished表示的是当我们加载完成后需要做什么操作,一般我们就是把这个加载dialog去掉就行了。至于这个onReceivedError是当我们加载失败做什么操作,这个时候一般是写一个加载错误的布局,或者fragment进行页面提示,

知道了方法那我们直接就实现就好了

请看效果图

其中dialog是自己写的一个小工具类,很简单自己定义下即可

以上就是本文的全部内容,希望对大家的学习有所帮助。

0 人点赞