Chr*_*ite 23 java eclipse android webview android-emulator
我有一个Android应用程序,我正在使用在android 2.3.3上运行的模拟器开发,嵌入式WebView在嵌套在linearlayout(垂直)的framelayout中.无论我使用什么代码,它实际上从未做过任何事情.我有Android应用程序设置为INTERNET的权限.即使在尝试加载HTML代码时也是如此.我得到一个空白的白页,没有任何错误.在logcat中也没有.
WebView wview = (WebView)findViewById(R.id.webView1);
wview.getSettings().setJavaScriptEnabled(true);
Run Code Online (Sandbox Code Playgroud)
我尝试了所有这三个尝试将任何内容加载到webview中:
wview.loadUrl("http://www.google.com");
wview.loadData("<HTML><BODY><H3>Test</H3></BODY></HTML>","text/html","utf-8");
wview.loadDataWithBaseURL(null, "<HTML><BODY><H3>Test</H3></BODY></HTML>","text/html","utf-8",null);
Run Code Online (Sandbox Code Playgroud)
这三个都给了我相同的结果.没有.
有任何想法吗?
zio*_*npi 39
WebSettings settings = wbView.getSettings();
settings.setDomStorageEnabled(true);
Run Code Online (Sandbox Code Playgroud)
Vea*_*rji 13
这可能有点太晚了,但我想与你分享我的经验,因为我遇到了同样的问题并花了很多时间.
把你WebView
放入RelativeLayout
而不是放入FrameLayout
.
我测试的内容:我WebView
的onPageFinished()
每次都被调用,但在屏幕上我得到了空白页面.从chrome://inspect
WebView
调试器我可以WebView
通过按下inspect
按钮"ping"我的,然后WebView
立即刷新.我的想法 - WebView
没有正确呈现FrameLayout
,并RelativeLayout
修复问题(甚至invalidate()
和requestLayout()
调用没有帮助).
rid*_*doy 11
我想如果你编辑了一些代码,那就没问题了.看看我在下面的例子中是怎么做的.以这种方式为你试试..
用于显示网页
final WebView wbView = (WebView) findViewById(R.id.WebView);
WebSettings settings = wbView.getSettings();
settings.setJavaScriptEnabled(true);
wbView.loadUrl("https://play.google.com/store/apps");
wbView.clearView();
wbView.measure(100, 100);
settings.setUseWideViewPort(true);
settings.setLoadWithOverviewMode(true);
Run Code Online (Sandbox Code Playgroud)
用于显示HTML:
请参阅本教程..
就我而言,这是因为我的 webview 尝试使用 HTTPS 加载页面,而证书不受信任。
您可以使用以下代码片段检查代码中是否存在这种情况:
@Override
public void onReceivedSslError(WebView view, SslErrorHandler handler, SslError error) {
handler.proceed();
}
Run Code Online (Sandbox Code Playgroud)
爪哇
override fun onReceivedSslError(view: WebView?, handler: SslErrorHandler?, error: SslError?) {
handler?.proceed()
}
Run Code Online (Sandbox Code Playgroud)
科特林
然后,如果是这种情况,请快速删除该代码片段并参考文档进一步诊断问题,并可能将证书添加到您的密钥库中。
小智 5
而不是传递null,您应该传递一个空值String
。例如:""
您应该这样称呼它:
wview.loadDataWithBaseURL("", "<HTML><BODY><H3>Test</H3></BODY></HTML>","text/html","utf-8","");
归档时间: |
|
查看次数: |
43880 次 |
最近记录: |