Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/234.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Android WebView显示白色或空白页面_Android_Android Webview - Fatal编程技术网

Android WebView显示白色或空白页面

Android WebView显示白色或空白页面,android,android-webview,Android,Android Webview,有人知道为什么webview显示白色页面吗? 这是密码 webView = (WebView) this.findViewById(R.id.webView); webView.getSettings().setJavaScriptEnabled(true); webView.loadUrl(THE_URL); webView.setWebViewClient(new WebViewClient()); 这个函数也叫做: @Override public void onPageFinished

有人知道为什么webview显示白色页面吗? 这是密码

webView = (WebView) this.findViewById(R.id.webView);
webView.getSettings().setJavaScriptEnabled(true);
webView.loadUrl(THE_URL);
webView.setWebViewClient(new WebViewClient());
这个函数也叫做:

@Override
public void onPageFinished(WebView view, String url) {
}
我是不是遗漏了什么? 当然,错误不是来自XML,因为webview只显示一些URL

谢谢

请参阅此。在代码中,您同时创建了两个webview客户端

mwebview=(WebView)findViewById(R.id.webview);
mwebview.getSettings().setJavaScriptEnabled(true);
mwebview.getSettings().setJavaScriptCanOpenWindowsAutomatically(true);
mwebview.loadUrl(webUrl);
mwebview.setWebChromeClient(new WebChromeClient() );

试试这个,而不是你的活动

main.xml

<!--?xml version="1.0" encoding="utf-8"?-->
<Linearlayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="fill_parent" android:layout_height="fill_parent" android:orientation="vertical">

   <Textview android:layout_height="wrap_content" android:layout_width="fill_parent" android:text="This is the demo of WebView Client" android:textsize="20sp" android:gravity="center_horizontal">
   </Textview>

   <Webview android:id="@+id/webview01" android:layout_height="wrap_content" android:layout_width="fill_parent" android:layout_weight="1">
   </Webview>

   <Imageview android:src="@drawable/ic_launcher" android:layout_height="wrap_content" android:layout_width="fill_parent">      

</Imageview></Linearlayout>
manifest.xml中使用这些权限

<uses-permission android:name="android.permission.INTERNET" />
    <uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION" />
    <uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" />

对于仍然存在此问题的任何人,如果通过https的安全连接失败,WebViewClient似乎不会警告您。这可能是由于您所连接的服务器上的SSL错误造成的


如果服务器允许,您可以尝试改用http。

调整容器视图背景,然后设置

webView.setBackgroundColor(Color.TRANSPARENT);

这种方式对我很有效:

    mWebView = (WebView) findViewById(R.id.myWebView);
    WebSettings webSettings = mWebView.getSettings();
    webSettings.setJavaScriptEnabled(true);
    webSettings.setDomStorageEnabled(true);
    mWebView.setVerticalScrollBarEnabled(true);
    mWebView.setWebViewClient(new WebViewClient());
    mWebView.getSettings().setLoadWithOverviewMode(true);
    mWebView.getSettings().setUseWideViewPort(true);
    mWebView.setLayerType(View.LAYER_TYPE_SOFTWARE, null);
    mWebView.setWebChromeClient(new WebChromeClient());
    mWebView.loadUrl(URL);

您是否在清单中授予了此权限?当然。它会显示您找到解决方案的其他HTMLID?不记得了。但您应该尝试在其前面添加“http://”。它可能会使它工作。使用调试检查
shouldOverrideUrlLoading
方法的url值。有时它会显示为“about:blank”,并加载一个空白页面。刚才我编辑了我的帖子,请尝试将此代码用于您的url。在清单中,我添加了另外两个权限(粗略位置和精细位置仅在您发现使用基于位置的应用程序时使用,请尝试此操作并向我提供反馈)。@Rendy:我可以知道您的URL值吗?在使用此webview之前,我就在我的应用程序中使用过它。你所说的URL值是什么意思?其中的参数?您尝试加载的链接是什么,例如,此处我加载了www.google.com抱歉,无法将其提供给您,因为它是机密的:)
    mWebView = (WebView) findViewById(R.id.myWebView);
    WebSettings webSettings = mWebView.getSettings();
    webSettings.setJavaScriptEnabled(true);
    webSettings.setDomStorageEnabled(true);
    mWebView.setVerticalScrollBarEnabled(true);
    mWebView.setWebViewClient(new WebViewClient());
    mWebView.getSettings().setLoadWithOverviewMode(true);
    mWebView.getSettings().setUseWideViewPort(true);
    mWebView.setLayerType(View.LAYER_TYPE_SOFTWARE, null);
    mWebView.setWebChromeClient(new WebChromeClient());
    mWebView.loadUrl(URL);