我的 WebView 加载带有少量图像、文本和 CSS 的 HTML 字符串。我单击图像,它会将我带到其他 Activity (例如 ImageActivity),并在 webview 中显示图像列表。单击后退按钮后,一些文本和图像从 web View 中消失。 See Image
我正在使用 Gson 来解析 HTML。
这是我的网页 View 代码
webView.getSettings().setJavaScriptEnabled(true);
webView.getSettings().setDomStorageEnabled(true);
webView.getSettings().setBuiltInZoomControls(false);
webView.addJavascriptInterface(new WebAppInterface(this,images), "Android");
webView.setWebViewClient(new WebViewClient(){
@Override
public boolean shouldOverrideUrlLoading(WebView view, String url) {
if(url.contains(Config.SITE_URL)){
Log.e("WebView","Site URL Clicked");
return true;
}else{
Log.e("WebView","External URL Clicked");
return true;
}
}
@Override
public void onPageFinished(WebView view, String url) {
progressBar.setVisibility(View.GONE);
webView.setVisibility(View.VISIBLE);
linearLayout.setVisibility(View.VISIBLE);
}
@Override
public void onReceivedSslError(WebView view, final SslErrorHandler handler, SslError error) {
handler.proceed();
}
});
.
.
.
html = "<link rel=\"stylesheet\" href=\"post.css\" type=\"text/css\"/>"+content+"<script type=\"text/javascript\">function imgclicked(toast) {Android.showToast(toast);}</script>";
webView.loadDataWithBaseURL("file:///android_asset/", html, "text/html", "UTF-8", null);
logcat 中没有内容
最佳答案
自己解决了。这是一个愚蠢的错误。
添加适当的 onPause
和 onResume
对我有用。
@Override
public void onPause() {
super.onPause();
webView.onPause();
}
和
@Override
protected void onResume() {
super.onResume();
webView.onResume();
}
关于android - WebView 内容在切换 Activity 并返回后部分消失,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42817085/