2013-01-03 89 views
12

我正在开发的应用程序有一个webview,我需要捕获webview请求点击事件(例如:点击一个链接,点击一个按钮,点击一个YouTube视频播放按钮,如.. 。)Android的webview捕获链接点击

回答

3

使用此代码,这对我来说

webview.setWebViewClient(new WebViewClient() 
     { 
      @Override 
      public boolean shouldOverrideUrlLoading(WebView view, String url) 
      { 
       return true; 
      } 
     }); 
14

工作这是可以做到

你有一个WebViewClient设为您的WebView。这是如何做到这一点。

WebView webView;//make sure to initialize 
webView.setWebViewClient(webViewClient); 

WebViewClient webViewClient= new WebViewClient(){ 
    @Override 
    public boolean shouldOverrideUrlLoading(WebView view, String url){ 
     return true; 
    } 
    @Override 
    public void onLoadResource(WebView view, String url){ 
     if(url.equals("http://yoururl.com")){ 
      // do something 
     } 
    } 
} 
+2

这不赶在我的案件的事件。对xml部分有任何要求吗? – Virthuss

2

你可以做这样的事情:

WebView myWebView = (WebView) findViewById(R.id.yourWebView); 
myWebView.setWebViewClient(new MyWebViewClient()); 
myWebView.loadUrl("yourLink"); 

但这时别忘了创建WebViewClient:

public class MyWebViewClient extends WebViewClient { 

    @Override 
     public boolean shouldOverrideUrlLoading(WebView view, String url) { 

      return true; 
     } 
}