私のアプリには webview があり、web の読み込みが完了するまで、表示の読み込み用の進行状況ダイアログを追加します。私はグーグルで検索し、良い解決策を得ました
wv.setWebChromeClient(new MyWebChromeClient());
wv.setWebViewClient(new MyWebViewClient());
wv.loadUrl("http://www.google.com");
private class MyWebViewClient extends WebViewClient {
@Override
public boolean shouldOverrideUrlLoading(WebView view, String url)
{
view.loadUrl(url);
return true;
}
@Override
public void onReceivedError(WebView view, int errorCode, String description, String failingUrl) {
alertdialog.setTitle("Error");
alertdialog.setMessage(description);
alertdialog.setButton("OK", new DialogInterface.OnClickListener() {
public void onClick(DialogInterface dialog, int which) {
//return;
finish();
}
});
alertdialog.show();
}
}
private class MyWebChromeClient extends WebChromeClient {
@Override
public void onProgressChanged(WebView view, int progress) {
progressDialog.show();
progressDialog.setProgress(0);
activity.setProgress(progress * 1000);
progressDialog.incrementProgressBy(progress);
if(progress == 100 && progressDialog.isShowing())
progressDialog.dismiss();
}
}
しかし、私の問題は、progressdialogを起動した後に一度だけ表示する方法です.今、写真のような例をクリックすると(google.comで)進行状況ダイアログが再び表示されるからです.