如何在WebView中点击链接使用自身打开

如何将点击链接后的网页也显示呢,于是边Google边查看Android文档,找到找到了一个方法,以下使用源码解释。

 


 
package demo.androidyue.webview; 
import android.app.Activity; 
import android.os.Bundle; 
import android.webkit.WebView; 
import android.webkit.WebViewClient; 
 
 
public class WebViewDemoActivity extends Activity { 
    private WebView webView; 
    /** Called when the activity is first created. */ 
    @Override 
    public void onCreate(Bundle savedInstanceState) { 
        super.onCreate(savedInstanceState); 
        setContentView(R.layout.main); 
        //初始化WebView 
        this.initWebView(); 
    } 
     
    /*
     * 初始化WebView
     */ 
    private void initWebView(){ 
        //从布局文件中扩展webView 
        this.webView=(WebView)this.findViewById(R.id.webview); 
        //为WebView设置WebViewClient处理某些操作 
        this.webView.setWebViewClient(new webViewClient()); 
        //加载地址 
        this.webView.loadUrl("http://10.0.2.2"); 
         
    } 
     
   class webViewClient extends WebViewClient{ 
       //重写shouldOverrideUrlLoading方法,使点击链接后不使用其他的浏览器打开。 
    @Override 
    public boolean shouldOverrideUrlLoading(WebView view, String url) { 
        view.loadUrl(url); 
        //如果不需要其他对点击链接事件的处理返回true,否则返回false 
        return true; 
    } 
        
   } 
} 
 


 

关键就是为WebView设置WebViewClient,然后重写shouldOverrideUrlLoading方法即可。其中WebViewClient为WebView的一个辅助类,主要处理各种通知、请求事件。