我使用下面的代码来填充我的WebView
与本地html文件,但它似乎在一些设备罚款,但最近我注意到在一些设备像 Colors X114
,WebView
出现罚款一秒,然后一切都消失,出现白色空白屏幕.
代码:
package com.nepalpolice.mnemonics;
import android.os.Bundle;
import android.support.v4.app.Fragment;
import android.support.v7.app.AppCompatActivity;
import android.view.KeyEvent;
import android.view.LayoutInflater;
import android.view.Menu;
import android.view.MenuItem;
import android.view.View;
import android.view.ViewGroup;
import android.webkit.WebSettings;
import android.webkit.WebView;
import android.webkit.WebViewClient;
import android.widget.Button;
import android.widget.EditText;
import android.widget.LinearLayout;
/**
* Created by Sagar on 2017/09/23. yo chai menupage ko Fragments ko lagi
*/
public class Homepage extends Fragment {
WebView myWebView;
private LinearLayout container;
private Button nextButton, closeButton;
private EditText findBox;
public Homepage() {
// Required empty public constructor
}
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container,
Bundle savedInstanceState) {
// Inflate the layout for this fragment
View rootView = inflater.inflate(R.layout.fragment_homepage, container, false);
String url = getArguments().getString("url");
myWebView=(WebView)rootView.findViewById(R.id.webview);
myWebView.getSettings().setBuiltInZoomControls(true);
myWebView.getSettings().setJavaScriptCanOpenWindowsAutomatically(true);
myWebView.getSettings().setLoadsImagesAutomatically(true);
myWebView.getSettings().setJavaScriptEnabled(true);
myWebView.getSettings().setBuiltInZoomControls(true);
myWebView.setInitialScale(1);
myWebView.getSettings().setLoadWithOverviewMode(true);
myWebView.getSettings().setUseWideViewPort(true);
WebSettings webSettings = myWebView.getSettings();
myWebView.loadUrl(url);
return rootView;
}
public static String changedHeaderHtml(String htmlText) {
String head = "<head><meta name=\"viewport\" content=\"width=device-width, user-scalable=yes\" /></head>";
String closedTag = "</body></html>";
String changeFontHtml = head + htmlText + closedTag;
return changeFontHtml;
}
}
字符串
这就是它的样子,或者应该是这样
的数据
但它如何出现在一些设备。
的
我将URL作为字符串传递如下
args3.putString("url1", "file:///android_asset/b/dbpm.html");
型
6条答案
按热度按时间nbysray51#
你试试这个:
字符串
axzmvihb2#
你很可能遇到过视图图层类型的问题。试试下面的代码:
字符串
并尝试在Manifest中设置硬件加速:
型
请参阅此link了解更多详情。
cclgggtu3#
看到你必须启用
JavaScriptEnabled
在它和在url必须有http:字符串
您可以在这些链接中获取基本信息:
polhcujo4#
我可以通过重写WebViewClient类来修复它,只需实现onPageFinished()进行验证,而页面的加载进度已经完成。
有时可能会出现页面内容未完全加载的情况。请重新加载页面,直到达到100%。
字符串
你应该实现一些类似超时验证的东西。
型
eqfvzcg85#
我的网站有问题。所有的申请请求都转到了AJAX。
字符串
然后我把请求改成
型
白色屏幕消失了,应用程序正在工作。
92dk7w1h6#
使您的网页浏览高度和宽度匹配父
字符串
这对我很有效