我是 android 开发的新手,我正在官方 android 网站上试用 WebView 示例。
http://developer.android.com/guide/tutorials/views/hello-webview.html
但是我按照他们说的做...这很简单:我创建项目,编辑布局文件,然后添加代码等。构建没有问题...但是当我在模拟器中启动应用程序时,我刚刚得到黑屏。就像 Layout 是空的......就像没有创建 WebView 一样。
我究竟做错了什么?
我是 android 开发的新手,我正在官方 android 网站上试用 WebView 示例。
http://developer.android.com/guide/tutorials/views/hello-webview.html
但是我按照他们说的做...这很简单:我创建项目,编辑布局文件,然后添加代码等。构建没有问题...但是当我在模拟器中启动应用程序时,我刚刚得到黑屏。就像 Layout 是空的......就像没有创建 WebView 一样。
我究竟做错了什么?
很抱歉——那个链接有点过时了。本教程的固定版本可在此处获得:
http://developer.android.com/guide/webapps/webview.html
我们应该删除旧链接;我会提交一个错误。
请注意,错误是setContentView
没有被调用。
在 oncreate 方法中添加WebView.enablePlatformNotifications();
在清单文件中添加
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE"></uses-permission>
现在它工作正常......
webview_id = (WebView)findViewById(R.id.webview_id);
webview_id.getSettings().setJavaScriptEnabled(true); // enable javascript
WebSettings webSettings = webview_id.getSettings();
webSettings.setBuiltInZoomControls(true);
webSettings.setDisplayZoomControls(true);
webSettings.setPluginState(WebSettings.PluginState.ON);
webSettings.setJavaScriptEnabled(true);
webview_id.setInitialScale(90);
webSettings.setLoadWithOverviewMode(true);
webview_id.requestFocusFromTouch();
webview_id.setWebViewClient(new WebViewClient() {
public void onReceivedError(WebView view, int errorCode, String description, String failingUrl) {
Snackbar.with(getApplicationContext()).dismiss();
Snackbar.with(getApplicationContext()) // context
.text(description) // text to display
.show(MainActivity.this);
}
public void onPageFinished(WebView view, String url) {
progressBar.setVisibility(View.GONE);
}
});
if(isNetworkAvailable()){
webview_id .loadUrl("http://helloworld.org/");
}else{
Snackbar.with(getApplicationContext()).dismiss();
Snackbar.with(getApplicationContext()) // context
.text("Please Check your Internet Connection") // text to display
.show(MainActivity.this);
progressBar.setVisibility(View.VISIBLE);
}
}