Java 如何在Android studio Webview上加载网页时添加进度条
嗨,我是这里的新手,也是android开发的新手,我想在webview上加载页面时添加进度条,加载后进度需要自动隐藏,我不知道怎么做,伙计们,帮帮我 activity_main.xml:Java 如何在Android studio Webview上加载网页时添加进度条,java,android,webview,Java,Android,Webview,嗨,我是这里的新手,也是android开发的新手,我想在webview上加载页面时添加进度条,加载后进度需要自动隐藏,我不知道怎么做,伙计们,帮帮我 activity_main.xml: <?xml version="1.0" encoding="utf-8"?> <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:id="@+id/activity_main"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:paddingBottom="0dp"
android:paddingLeft="0dp"
android:paddingRight="0dp"
android:paddingTop="0dp"
tools:context="com.example.tamil.stagingsite.MainActivity">
<ProgressBar
android:id="@+id/progressBar"
style="@android:style/Widget.Material.Light.ProgressBar.Large"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_centerHorizontal="true"
android:layout_centerVertical="true" />
<WebView
android:id="@+id/activity_main_webview"
android:layout_width="wrap_content"
android:layout_height="match_parent"
android:layout_alignParentStart="true"
android:layout_alignParentTop="true"
android:animationCache="true"
android:background="@android:color/white">
</WebView>
</RelativeLayout>
在onPageStarted方法中显示progressbar,并在OnPageFinished方法中关闭它
mWebView.setWebViewClient(new WebViewClient() {
@Override
public void onPageStarted(WebView view, String url, Bitmap facIcon) {
//showProgressBar();
}
@Override
public void onPageFinished(WebView view, String url) {
// hideProgressBar();
}
}
初始化主活动中的进度条,然后 使webviewclient onPageFinished方法中的进度条可见
mWebView.setWebViewClient(new MyAppWebViewClient(this));
及
要在Webview上加载页面时添加进度对话框,请添加以下代码,无需在XML中添加进度栏
//Intialize the progress dialog:
WebView webview;
ProgressDialog progressDialog;
//Write the following code in OnCreate:
webview=(WebView)findViewById(R.id.webview);
progressDialog=new ProgressDialog(this);
progressDialog.setMessage("Loading");
progressDialog.setProgressStyle(ProgressDialog.STYLE_SPINNER);
progressDialog.show();
加载网页后,您必须关闭ProgressDialog。为此,在OnPageFinish中关闭ProgressDialog
webview.setWebViewClient(new WebViewClient()
{
@Override
public boolean shouldOverrideUrlLoading(WebView view, String url) {
view.loadUrl("YOUR URL");
return true;
}
@Override
public void onPageFinished(WebView view, String url) {
super.onPageFinished(view, url);
if (progressDialog.isShowing()) {
progressDialog.dismiss();
}
}
});
与此相关的许多问题可能重复。。
//Intialize the progress dialog:
WebView webview;
ProgressDialog progressDialog;
//Write the following code in OnCreate:
webview=(WebView)findViewById(R.id.webview);
progressDialog=new ProgressDialog(this);
progressDialog.setMessage("Loading");
progressDialog.setProgressStyle(ProgressDialog.STYLE_SPINNER);
progressDialog.show();
webview.setWebViewClient(new WebViewClient()
{
@Override
public boolean shouldOverrideUrlLoading(WebView view, String url) {
view.loadUrl("YOUR URL");
return true;
}
@Override
public void onPageFinished(WebView view, String url) {
super.onPageFinished(view, url);
if (progressDialog.isShowing()) {
progressDialog.dismiss();
}
}
});