您的位置:首页 > 移动开发

WebView 加载数据时显示进度条,加载完后再把进度条取消并显示内容

2015-11-09 16:17 477 查看
转载地址:http://blog.sina.com.cn/s/blog_7a66361301011a46.html

webview 加载数据时显示进度条有两种.

第一种方法

这个是加载数据时显示进度条

super.onCreate(savedInstanceState);

this.getWindow().requestFeature(Window.FEATURE_PROGRESS);

setContentView(R.layout.main);

cWebView = (WebView) findViewById(R.id.Conditions);

cWebView.getSettings().setJavaScriptEnabled(true);

cWebView.getSettings().setSupportZoom(true);

cWebView.getSettings().setBuiltInZoomControls(true);

url = "http://site.baidu.com/";

cWebView.setWebChromeClient(new WebChromeClient() {

public void onProgressChanged(WebView view, int progress) {

// Activity和Webview根据加载程度决定进度条的进度大小

// 当加载到100%的时候 进度条自动消失

setTitle("Loading...");

setProgress(progress * 100);

}

});

cWebView.loadUrl(url);

第二种方法

这个是加载数据时显示ProgressDialog

class MyWebViewClient extends WebViewClient{

@Override

public boolean shouldOverrideUrlLoading(WebView view, String url) {

view.loadUrl(url);

return true;

}

@Override

public void onPageFinished(WebView view, String url) {

if(progressBar.isShowing()){

progressBar.dismiss();

}

}

@Override

public void onReceivedError(WebView view, int errorCode,

String description, String failingUrl) {

Toast.makeText(EnterListenter.this, "网页加载出错!", Toast.LENGTH_LONG);

alertDialog.setTitle("ERROR");

alertDialog.setMessage(description);

alertDialog.setButton("OK", new DialogInterface.OnClickListener(){

public void onClick(DialogInterface dialog, int which) {

// TODO Auto-generated method stub

}

});

alertDialog.show();

}

}

protected void initWebView(){

//设计进度条

progressBar = ProgressDialog.show(EnterListenter.this, null, "正在进入网页,请稍后…");

//获得WebView组件

cWebView = (WebView) findViewById(R.id.Conditions);

cWebView.getSettings().setJavaScriptEnabled(true);

cWebView.getSettings().setSupportZoom(true);

cWebView.getSettings().setBuiltInZoomControls(true);

url = "http://site.baidu.com/";

cWebView.loadUrl(url);

alertDialog = new AlertDialog.Builder(this).create();

//设置视图客户端

cWebView.setWebViewClient(new MyWebViewClient());

}

其他参考地址:http://www.cnblogs.com/over140/archive/2013/03/07/2947721.html
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: