在浏览器中加载WebPage而不是在Activity中加载Webview

时间:2013-11-25 13:13:51

标签: android android-webview

在我的xml文件中,我有文本,在该文本下方,我已经放置了一个webview。 我想在Webview中打开谷歌的主页。而不是在webview中打开,网页是在浏览器上打开的。我想要的是网页应该加载在某个文本下面的webview中。下面是我的代码:

           <TextView
                  android:id="@+id/txt"

                  android:text="Hello Android"
                  android:textSize="30sp"
                  android:textStyle="bold"
                  android:textColor="#003399"
                  android:layout_height="wrap_content"
                  android:layout_width="wrap_content"
                  android:layout_centerHorizontal="true"
                  />

      <WebView 

                 android:id="@+id/webview"
                 android:layout_marginTop="50dp"
                 android:layout_below="@id/txt"
                 android:layout_height="fill_parent"
                 android:layout_width="fill_parent"/>

请帮助解决这个问题。谢谢你

2 个答案:

答案 0 :(得分:1)

这是因为两件事的结合:

  1. 未设置WebViewClient(设置为null),这使得WebView尝试将每个导航作为对系统的意图提供。由于您安装了浏览器,系统将尝试在那里处理该导航。
  2. 通常google.com导致重定向,这就是为什么前一点关于导航的内容很重要的原因。
  3. 试试这个:

    webview = (WebView) findViewById(R.id.webview);
    webview.setWebViewClient(new WebViewClient());
    

答案 1 :(得分:0)

创建您的活动,然后使用此代码......

  

mWebview =(WebView)findViewById(R.id.webview);             mWebview.getSettings()setJavaScriptEnabled(真)。 //启用javascript

      mWebview.setWebViewClient(new WebViewClient() {
          public void onReceivedError(WebView view, int errorCode,String description, String failingUrl) {
              Toast.makeText(youractivity_name.this, description, Toast.LENGTH_SHORT).show();
          }
      });

      mWebview.loadUrl("http://www.yahoo.com");