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

如题所述

首先要使其不是通过手机本身的浏览器来实现浏览网页而是通过这个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;
}
}
温馨提示:答案为网友推荐,仅供参考
第1个回答  2016-01-26
WebView webview = (WebView)findViewById(R.id.webview);  
webview.setWebChromeClient(new WebChromeClient() {  
          public void onProgressChanged(WebView view, int progress) {  
            //Activity和Webview根据加载程度决定进度条的进度大小  
           //当加载到100%的时候 进度条自动消失  
            context.setProgress(progress * 100);  
   }  
});  
webview.loadUrl(url);

本回答被提问者采纳
相似回答