当我们需要在程序里显示一个网页时,并不需要编写出一个浏览器出来,因为Android早已为我们提供了一个WebView控件,借助这个空间,我们可以轻易地展示出我们想要展示的网页。
布局代码:
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent"
android:layout_height="match_parent" android:paddingLeft="@dimen/activity_horizontal_margin"
android:paddingRight="@dimen/activity_horizontal_margin"
android:paddingTop="@dimen/activity_vertical_margin"
android:paddingBottom="@dimen/activity_vertical_margin" tools:context=".MainActivity">
<WebView
android:id="@+id/webview"
android:layout_width="match_parent"
android:layout_height="match_parent"></WebView>
</RelativeLayout>
MainActivity
public class MainActivity extends ActionBarActivity {
private WebView webView;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
webView = (WebView)findViewById(R.id.webview);
webView.getSettings().setJavaScriptEnabled(true);
webView.setWebViewClient(new WebViewClient());
webView.loadUrl("http://www.baidu.com");
}
}
过程非常简单,获取到WebView实例之后,调用getSetting属性可以设置浏览器的属性,我们只需要调用setJavaScriptEnabled()方法来让WebView支持JavaScript脚本即可。
接下来我们调用setWebViewClient方法,传入一个WebViewClient实例,目的是让我们的网页显示在我们的程序中,如果不传入这个实例,我们打开的这个网页将会调用系统的浏览器打开。
最后调用loadUrl方法,将需要打开的网页的地址传入即可
注意需要加入联网权限
<uses-permission android:name="android.permission.INTERNET"></uses-permission>