WebView 不显示任何内容
WebView doesn't display anything
无论我做什么,这个简单的 WebView
都不起作用。在下面的代码中,如果重要的话,我还添加了我的 if 条件。
String URL = "www.google.com.tr";
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
if(isNetworkAvailable(this)) {
Toast.makeText(
MainActivity.this,
"Welcome",
Toast.LENGTH_LONG
).show();
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);
}
else //Not connected
{
Toast.makeText(
MainActivity.this,
"Internet disconnected",
Toast.LENGTH_LONG
).show();
}
}
activity_main.xml
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
tools:showIn="@layout/activity_main">
<WebView
android:id="@+id/myWebView"
android:layout_width="match_parent"
android:layout_height="match_parent" />
</RelativeLayout>
这个 WebView
显示文本 "Welcome" 所以我认为程序应该可以毫无问题地显示网站。我没办法。我什至尝试更改布局类型,添加 ChromeView
而不是普通的 Web 视图。并尝试将内容视图从 match_parent 更改为 wrap_content。但是这样做没有运气。
我的清单中有互联网许可
您缺少 URL 中的协议信息。
而不是:
String URL = "www.google.com.tr";
使用:
String URL = "https://www.google.com.tr";
我猜你需要设置
webSettings.setBlockNetworkLoads(false);
无论我做什么,这个简单的 WebView
都不起作用。在下面的代码中,如果重要的话,我还添加了我的 if 条件。
String URL = "www.google.com.tr";
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
if(isNetworkAvailable(this)) {
Toast.makeText(
MainActivity.this,
"Welcome",
Toast.LENGTH_LONG
).show();
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);
}
else //Not connected
{
Toast.makeText(
MainActivity.this,
"Internet disconnected",
Toast.LENGTH_LONG
).show();
}
}
activity_main.xml
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
tools:showIn="@layout/activity_main">
<WebView
android:id="@+id/myWebView"
android:layout_width="match_parent"
android:layout_height="match_parent" />
</RelativeLayout>
这个 WebView
显示文本 "Welcome" 所以我认为程序应该可以毫无问题地显示网站。我没办法。我什至尝试更改布局类型,添加 ChromeView
而不是普通的 Web 视图。并尝试将内容视图从 match_parent 更改为 wrap_content。但是这样做没有运气。
我的清单中有互联网许可
您缺少 URL 中的协议信息。
而不是:
String URL = "www.google.com.tr";
使用:
String URL = "https://www.google.com.tr";
我猜你需要设置
webSettings.setBlockNetworkLoads(false);