Android webview在默认浏览器中打开页面而不是我的webview

Adr*_* M. 2 browser android webview

我正在尝试两天找到一个代码来处理我的工作..我正在学习本教程:http://techvalleyprojects.blogspot.ro/2011_08_01_archive.html

我有以下问题:我想在我的应用程序中打开的网页未加载到我的webview中,而是在默认浏览器中打开.如何修改我的代码,以便在webview中打开所有链接.我需要一个简单的解决方案,因为我对Android很新.

谢谢.

package com.example.name;

import android.app.Activity;
import android.os.Bundle;
import android.webkit.WebChromeClient;
import android.webkit.WebView;

public class MainActivity extends Activity {
WebView browser;

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

        // find the WebView by name in the main.xml of step 2
        browser=(WebView)findViewById(R.id.wvwMain);

        // Enable javascript
        browser.getSettings().setJavaScriptEnabled(true);  

        // Set WebView client
        browser.setWebChromeClient(new WebChromeClient());

        // Load the webpage
        browser.loadUrl("http://news.google.com/");

    }
}
Run Code Online (Sandbox Code Playgroud)

M D*_*M D 11

你需要这样实现setWebViewClient(....).

webView.setWebViewClient(new WebViewClient() {

        @Override
        public boolean shouldOverrideUrlLoading(WebView view, String url) {
                view.loadUrl(url);
                return true;
                }
        });
Run Code Online (Sandbox Code Playgroud)

更新:

让你的活动如此

public class MainActivity extends Activity {
WebView browser;

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

    // find the WebView by name in the main.xml of step 2
    browser=(WebView)findViewById(R.id.wvwMain);

    // Enable javascript
    browser.getSettings().setJavaScriptEnabled(true);  

    // Set WebView client
    browser.setWebChromeClient(new WebChromeClient());

    browser.setWebViewClient(new WebViewClient() {

        @Override
        public boolean shouldOverrideUrlLoading(WebView view, String url) {
                view.loadUrl(url);
                return true;
                }
        });
     // Load the webpage
    browser.loadUrl("http://news.google.com/");
   }
}
Run Code Online (Sandbox Code Playgroud)