android调用H5显示加载中效果

来源:互联网 发布:阿里云邮箱前缀怎么写 编辑:程序博客网 时间:2024/05/01 18:51

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

ok 废话不多说,上代码吧


  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是自己写的一个小工具类,很简单自己定义下即可


原创粉丝点击