Я разрабатываю WebView для моего проекта.
Я использовал WebView с индикатором выполнения.
Индикатор выполнения загружается правильно при загрузке WebView. После загрузки страницы индикатор выполнения не исчезает.
Как сделать так, чтобы его видимость исчезла.
Я поделюсь кодом. Я создал веб-просмотр с индикатором выполнения.
public class MainActivity extends Activity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
String url = "https://rnbazar.com/";
setContentView(R.layout.activity_main);
final WebView myWebView = (WebView) findViewById(R.id.webview);
WebSettings webSettings = myWebView.getSettings();
webSettings.setJavaScriptEnabled(true);
//myWebView.setWebViewClient(new WebViewClient());
myWebView.getSettings().setUseWideViewPort(true);
myWebView.getSettings().setLoadWithOverviewMode(true);
myWebView.loadUrl(url);
myWebView.setWebViewClient(new MyWebViewClient());
myWebView.setWebViewClient(new WebViewClient() {
@Override public void onReceivedError(WebView view, int errorCode,
String description, String failingUrl) {
myWebView.loadUrl("file:///android_asset/error.html");
}
});
}
private class MyWebViewClient extends WebViewClient {
@Override
public void onPageStarted(final WebView myWebView, final String url,
final Bitmap favicon) {
ProgressBar bar = (ProgressBar)
myWebView.findViewById(R.id.progressBar);
bar.setVisibility(View.VISIBLE);
super.onPageStarted(myWebView, url, favicon);
}
@Override
public boolean shouldOverrideUrlLoading(WebView myWebView, String url) {
myWebView.loadUrl(url);
return true;
}
@Override
public void onPageFinished(WebView myWebView, String url) {
ProgressBar bar = (ProgressBar)
myWebView.findViewById(R.id.progressBar);
super.onPageFinished(myWebView, url);
bar.setVisibility(View.GONE);
}
}
}
Я хочу, чтобы индикатор загрузки исчезал после загрузки страницы. если я нажимаю любую ссылку снова, загрузчик приходит и снова исчезает после загрузки страницы.