В моей деятельности у меня есть Webview. Мне нужно показать Loading (индикатор выполнения), когда webview загружает страницу, и закрыть индикатор выполнения, когда загрузка страницы завершена. Я написал следующий код:
wvBrowser.setWebViewClient(new WebViewClient() {
@Override
public void onPageStarted(WebView view, String url, Bitmap favicon) {
super.onPageStarted(view, url, favicon);
progressBar = ProgressDialog.show(F1TrackCountryRaceTrackInfo.this, "", "Loading...");
}
@Override
public void onPageFinished(WebView view, String url) {
super.onPageFinished(view, url);
progressBar.dismiss();
}
});
Когда я запускаю приложение в первый раз, все в порядке, но во второй раз приложение вылетает и logcat указывает на «progressBar.dismiss();
» в «onPageFinished».
Я добавил метод onPause (), чтобы закрыть действие, и подумал, что, возможно, это решит проблему, но у меня все еще есть проблема.
@Override
protected void onPause() {
super.onPause();
if(progressBar.isShowing())
progressBar.dismiss();
Toast.makeText(this, "Activity closed.", Toast.LENGTH_LONG).show();
F1TrackCountryRaceTrackInfo.this.finish();
}
В чем моя ошибка и как ее решить? Спасибо
Ошибка Logcat:
04-03 11: 14: 36.880: E / AndroidRuntime (19613): ИСКЛЮЧИТЕЛЬНОЕ ИСКЛЮЧЕНИЕ: основное
04-03 11: 14: 36.880: E / AndroidRuntime (19613):
java.lang.NullPointerException 04-03 11: 14: 36.880:
E / AndroidRuntime (19613): в
com.maxis.f12011.activities.F1TrackCountryRaceTrackInfo $ 1.onPageFinished (F1TrackCountryRaceTrackInfo.java:75)
04-03 11: 14: 36.880: E / AndroidRuntime (19613): в
android.webkit.CallbackProxy.handleMessage (CallbackProxy.java:289)
04-03 11: 14: 36.880: E / AndroidRuntime (19613): в
android.os.Handler.dispatchMessage (Handler.java:99) 04-03
11: 14: 36.880: E / AndroidRuntime (19613): в
android.os.Looper.loop (Looper.java:130) 04-03 11: 14: 36.880:
E / AndroidRuntime (19613): в
android.app.ActivityThread.main (ActivityThread.java:3691) 04-03
11: 14: 36.880: E / AndroidRuntime (19613): в
java.lang.reflect.Method.invokeNative (родной метод) 04-03
11: 14: 36.880: E / AndroidRuntime (19613): в
java.lang.reflect.Method.invoke (Method.java:507) 04-03 11: 14: 36.880:
E / AndroidRuntime (19613): в
com.android.internal.os.ZygoteInit $ MethodAndArgsCaller.run (ZygoteInit.java:907)
04-03 11: 14: 36.880: E / AndroidRuntime (19613): в
com.android.internal.os.ZygoteInit.main (ZygoteInit.java:665) 04-03
11: 14: 36.880: E / AndroidRuntime (19613): в
dalvik.system.NativeStart.main (собственный метод)