Android WebView加载期间的片段更改会导致崩溃
我正在片段中使用WebView。用户可以使用导航栏在片段之间切换 以下代码在WebView加载时运行加载图像,并在加载过程完成时隐藏加载图像。它工作得非常好,除了在WebView加载过程中切换到另一个片段时,应用程序大部分时间崩溃Android WebView加载期间的片段更改会导致崩溃,android,android-fragments,webview,Android,Android Fragments,Webview,我正在片段中使用WebView。用户可以使用导航栏在片段之间切换 以下代码在WebView加载时运行加载图像,并在加载过程完成时隐藏加载图像。它工作得非常好,除了在WebView加载过程中切换到另一个片段时,应用程序大部分时间崩溃 myWebView = (WebView) v.findViewById(R.id.webView); WebSettings webSettings = myWebView.getSettings(); webSettings.set
myWebView = (WebView) v.findViewById(R.id.webView);
WebSettings webSettings = myWebView.getSettings();
webSettings.setJavaScriptEnabled(true);
WebView webview = (WebView) v.findViewById(R.id.webView);
myWebView.setWebViewClient(new WebViewClient() {
// Shows loading image during WebView load
@Override
public void onPageFinished(WebView view, String url) {
//hide loading image
getView().findViewById(R.id.imageLoading1).setVisibility(View.GONE);
//show webview
getView().findViewById(R.id.webView).setVisibility(View.VISIBLE);
}
});
webview.loadUrl("http://www.website.com");
我们非常感谢您提供有关坠机原因的帮助。这是因为
@Override
public void onPageFinished(WebView view, String url) {
//hide loading image
getView().findViewById(R.id.imageLoading1).setVisibility(View.GONE);
//show webview
getView().findViewById(R.id.webView).setVisibility(View.VISIBLE);
}
您在页面加载之前更改片段,并在
onPageFinished()
中尝试获取图像并设置其可见性,该图像已不存在。最好对片段进行一周的引用,在您的onPageFinished中,首先检查您的webview片段是否已销毁或可用。如果可用,则继续设置可见性,否则忽略。您可以提供崩溃堆栈跟踪吗?