网页未在Android应用中加载

时间:2014-09-17 10:53:10

标签: android android-webview

我试过了this example。它工作正常。我想实现一个直接加载Google页面的应用。

我编辑了代码。这是我的代码:

public class MainActivity extends Activity {

     private WebView browser;

    @Override
    protected void onCreate(Bundle savedInstanceState) { 
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);

        browser = (WebView)findViewById(R.id.webView1);

        browser.setWebViewClient(new MyBrowser());

    }

    public void open(View view) {
        String myurl = "https://www.google.com";
        browser.getSettings().setLoadsImagesAutomatically(true);
        browser.getSettings().setJavaScriptEnabled(true);
        browser.setScrollBarStyle(View.SCROLLBARS_INSIDE_OVERLAY);
        browser.loadUrl(myurl);
       }

    private class MyBrowser extends WebViewClient {
          @Override
          public boolean shouldOverrideUrlLoading(WebView view, String url) {
             view.loadUrl(url);
             return true;
          }
       }    
}

XML文件:

<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:paddingBottom="@dimen/activity_vertical_margin"
    android:paddingLeft="@dimen/activity_horizontal_margin"
    android:paddingRight="@dimen/activity_horizontal_margin"
    android:paddingTop="@dimen/activity_vertical_margin"
    tools:context="com.example.sinlge.MainActivity" >

<WebView
      android:id="@+id/webView1"
      android:layout_width="match_parent"
      android:layout_height="match_parent"

      android:layout_alignParentBottom="true"
 />

</RelativeLayout>

不显示任何错误,但显示白页。

1 个答案:

答案 0 :(得分:1)

请使用

String myurl = "https://www.google.com";
browser.getSettings().setLoadsImagesAutomatically(true);
browser.getSettings().setJavaScriptEnabled(true);
browser.setScrollBarStyle(View.SCROLLBARS_INSIDE_OVERLAY);
browser.loadUrl(myurl);

onCreate中的

browser = (WebView)findViewById(R.id.webView1);
browser.setWebViewClient(new MyBrowser());

因为我无法看到public void open(View view)被调用的地方。