android中webview 怎么实现网页加载时显示加载进度

2024-10-28 02:26:58
推荐回答(1个)
回答(1):

首先要使其不是通过手机本身的浏览器来实现浏览网页而是通过这个webview来实现所浏览的网页,

webView.setWebViewClient(new MyWebViewClient());

首先要定义一个progressDialog来实现中间显示加载进度和温馨提示

private class MyWebViewClient extends WebViewClient{
@Override
public void onPageStarted(WebView view, String url,Bitmap favicon) {//网页页面开始加载的时候
if (progressDialog == null) {
progressDialog=new ProgressDialog(MainActivity.this);
progressDialog.setMessage("数据加载中,请稍后。。。");
progressDialog.show();
webView.setEnabled(false);// 当加载网页的时候将网页进行隐藏
}
super.onPageStarted(view, url,favicon);
}
@Override
public void onPageFinished(WebView view, String url) {//网页加载结束的时候
//super.onPageFinished(view, url);
if (progressDialog != null && progressDialog.isShowing()) {
progressDialog.dismiss();
progressDialog = null;
webView.setEnabled(true);
}
}
@Override
public boolean shouldOverrideUrlLoading(WebView view ,String url){ //网页加载时的连接的网址
view.loadUrl(url);
return false;
}
}