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-02-20
android中只需要给webView注册一个事件即可实现加载进度。
以下是具体实现代码:
1.从webView中获取设置
WebSettings sws = webView.getSettings();
sws.setSupportZoom(true);
sws.setBuiltInZoomControls(true);
webView.setInitialScale(25);
webView.getSettings().setUseWideViewPort(true);

2.注册setWebChromeClient事件
webView.setWebChromeClient(new WebChromeClient() {
public void onProgressChanged(WebView view, int progress) {
// Activity和Webview根据加载程度决定进度条的进度大小
// 当加载到100%的时候 进度条自动消失
//WebViewProgressActivity.this.setTitle("Loading...");
//WebViewProgressActivity.this.setProgress(progress * 100);
if (progress == 100) {
progressBar.setVisibility(View.GONE);
//WebViewProgressActivity.this.setTitle("完成");
}
}
});

3.注意在onProgressChanged中处理进度,progress就是进度值。本回答被提问者采纳
android中webview 怎么实现网页加载时显示加载进度?
1.从webView中获取设置 WebSettings sws = webView.getSettings();sws.setSupportZoom(true);sws.setBuiltInZoomControls(true);webView.setInitialScale(25);webView.getSettings().setUseWideViewPort(true);2.注册setWebChromeClient事件 webView.setWebChromeClient(new WebChromeClient() { public void on...

android中webview 怎么实现网页加载时显示加载进度
首先要定义一个progressDialog来实现中间显示加载进度和温馨提示 private class MyWebViewClient extends WebViewClient{ Override public void onPageStarted(WebView view, String url,Bitmap favicon) {\/\/网页页面开始加载的时候 if (progressDialog == null) { progressDialog=new ProgressDialog(MainActivity....

android中webview 怎么实现网页加载时显示加载进度
方法一:可以在WebView上面放一个进度条,加载webView时显示出来,然后webView里面有加载回调的方法,判断状态码如果是200则隐藏即可。方法二:在webview里面加进度条

WebView的使用
第一步:在布局文件中声明WebView组件,用于承载网页内容。第二步:在Activity中实例化WebView,设置其属性并加载网页。第三步:在AndroidManifest.xml中添加必要的网络权限,确保WebView能够访问和加载网页资源。第四步:调用loadUrl( )方法,指定要加载的网页URL。第五步:通过setWebViewClient( )方法设...

WebView的使用
通过调用setWebViewClient方法设置WebViewClient,以处理网页中的链接点击和导航操作。增强用户体验:设置WebChromeClient以获取网页加载进度、标题等信息,增强用户体验。例如,可以显示加载进度条或更新页面标题。自定义WebView行为:通过重写WebViewClient和WebChromeClient类中的方法,实现自定义的行为。例如,处理...

android进度条怎么显示百分比
显示百分比需要自己计算加载的内容,以下以webView示例,webView加载网页的时候可以增加进度条:1.从webView中获取设置 WebSettings sws = webView.getSettings();sws.setSupportZoom(true);sws.setBuiltInZoomControls(true);webView.setInitialScale(25);webView.getSettings().setUseWideViewPort(true);2...

android 为什么webview 加载网页时滑动总是置顶
android中只需要给webView注册一个事件即可实现加载进度。以下是具体实现代码:1.从webView中获取设置WebSettings sws = webView.getSettings();sws.setSupportZoom(true);sws.setBuiltInZoomControls(true);webView.setInitialScale(25);webView.getSettings().setUseWideViewPort(true);2.注册...

HarmonyOS开发学习: Web控件网页加载展示
在完成页面容器的设置后,需要在main_pages.json中注册新创建的页面,确保HarmonyOS系统能够识别并加载该页面。接下来重点介绍WebView组件的API功能。通过调用相应方法,可以控制网页加载、显示、隐藏、跳转等操作,实现丰富的交互效果。同时,通过事件监听机制,可以实时获取用户与网页的交互信息,进一步提升用户...

如何加速Android WebView页面加载
第一种方法的步骤:1.在要Activity中实例化WebView组件:WebView webView = new WebView(this);2.调用WebView的loadUrl()方法,设置WevView要显示的网页:互联网用:webView.loadUrl("http:\/\/www.google.com");本地文件用:webView.loadUrl("file:\/\/\/android_asset\/XX.html"); 本地文件存放...

android webview加载网页很慢,而浏览器很快
一般人堆WebView的加速,都是建议先用webView.getSettings().setBlockNetworkImage(true); 将图片下载阻塞,然后在浏览器的OnPageFinished事件中设置webView.getSettings().setBlockNetworkImage(false); 通过图片的延迟载入,让网页能更快地显示。但是,通过实际的日志发现,Android的OnPageFinished事件会在Javascript...

相似回答