Android fragments 片段选项卡更改后Webview崩溃
我有一个带有3个actionbar选项卡的活动。每个选项卡都包含一个webview,它在片段oncreate()处加载URL。一切正常,但如果我快速切换选项卡,则在选项卡更改后会显示onpagefinished,因此当调用片段消失时,会导致NullPointerException。有没有办法防止这种情况 我在片段中尝试:Android fragments 片段选项卡更改后Webview崩溃,android-fragments,android-webview,Android Fragments,Android Webview,我有一个带有3个actionbar选项卡的活动。每个选项卡都包含一个webview,它在片段oncreate()处加载URL。一切正常,但如果我快速切换选项卡,则在选项卡更改后会显示onpagefinished,因此当调用片段消失时,会导致NullPointerException。有没有办法防止这种情况 我在片段中尝试: public void onDestroy() { super.onDestroy(); try { myWebView
public void onDestroy() {
super.onDestroy();
try {
myWebView.stopLoading();
} catch (Exception e) {
}
try {
myWebView.clearView();
} catch (Exception e) {
}
在我的选项卡侦听器中:
onTabSelected(Tab tab, FragmentTransaction ft) {
// StartActivity.mViewPager.setCurrentItem(tab.getPosition());
if (FinishedLoading == true){
ft.replace(R.id.fragment_container, fragment);
}
}
这两个选项都不能防止应用程序崩溃
我收到的错误是:
java.lang.NullPointerException
at com.***.Fragment1$MyWebViewClient.onPageFinished(Fragment1.java:233)
at android.webkit.CallbackProxy.handleMessage(CallbackProxy.java:389)
at android.os.Handler.dispatchMessage(Handler.java:99)
at android.os.Looper.loop(Looper.java:137)
at android.app.ActivityThread.main(ActivityThread.java:4898)
at java.lang.reflect.Method.invokeNative(Native Method)
at java.lang.reflect.Method.invoke(Method.java:511)
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:1006)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:773)
at dalvik.system.NativeStart.main(Native Method)
我也面临着这个问题。如果尚未解决此问题,您可能希望尝试在片段中实现
onPause
,如下所示:
@Override
public void onPause() {
if (webview.isShown() == false) {
webview.stopLoading();
}
super.onPause();
}
@Override
public void onResume() {
super.onResume();
}
其中
webview
是您的webview我也面临着这个问题。如果尚未解决此问题,您可能希望尝试在片段中实现onPause
,如下所示:
@Override
public void onPause() {
if (webview.isShown() == false) {
webview.stopLoading();
}
super.onPause();
}
@Override
public void onResume() {
super.onResume();
}
其中webview
是您的webview