要查看应用内的网页?

时间:2012-07-02 04:17:16

标签: java android android-webview

我需要构建一个Android应用,让您可以在我的应用中查看网页。我需要这不是在浏览器中,而是我的应用程序。 我找到了答案以及加载页面时的一些选项。 在我测试过后,我想我会尝试分享我在这里找到的信息.....

1 个答案:

答案 0 :(得分:7)

首先需要为清单添加INTERNET权限。

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

然后,使用WebView类显示网页。首先,创建一个包含webview的布局:

<?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">
<WebView android:id="@+id/myWebView"
              android:layout_width="fill_parent" 
              android:layout_height="fill_parent" />
</LinearLayout>

在您的Activity(可能是onCreate)中,使用您创建的布局初始化WebView对象。一个例子如下。     私人WebView webview;

public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.somelayout);

    String url = "http://bigdaddyapp.com";

    webview = (WebView) findViewById(R.id.myWebView);
    //next line explained below
    webview.setWebViewClient(new MyWebViewClient(this));
    webview.getSettings().setJavaScriptEnabled(true);
    webview.loadUrl(url);
}

如果您想要特定的选项,例如在加载时捕获页面,则需要一个内部WebViewClient类。例如,您可以使用onPageStarted(...)方法在Webview中加载新页面时执行某些操作:

 public class MyWebViewClient extends WebViewClient {

  public MyWebViewClient() {
     super();
     //start anything you need to
  }

  public void onPageStarted(WebView view, String url, Bitmap favicon) {
     //Do something to the urls, views, etc.
  }
 }