2014-10-22 61 views
0

我有一个WebView里面的一个片段,例如当用户打开我的应用程序的一部分与WebView我会告诉他一个网站例如易趣或亚马逊。我的问题是,当他点击来自WebView的另一个链接时,新链接将在默认浏览器中打开。 有没有办法继续打开我的WebView中的链接?Android网络查看新链接

+0

在应用程序中打开WebView中的外部网站时请记住安全问题(请参阅http://developer.android.com/training/articles/security-tips.html#WebView) – FreewheelNat 2014-10-22 09:28:20

回答

1

使用WebViewClient

myWebView.setWebViewClient(new WebViewClient(){ 
    public boolean shouldOverrideUrlLoading(WebView view, String url) { 
    // TODO Auto-generated method stub 

     if(url.contains("amazon")) //compare urls that should open in same webview 
     { 
      return super.shouldOverrideUrlLoading(view, url); 
     } 
     else 
     {  
      //open in default browser 
      view.getContext().startActivity(
          new Intent(Intent.ACTION_VIEW, Uri.parse(url))); 
      return true; 
     } 
    } 
}); 

希望它能帮助。

1

对于您需要将您的Web客户端明确设置为web视图这样

webview.setWebViewClient(new WebViewClient()); 
+0

将WebViewClient设置为WebView作品。 谢谢你们。 – CipQuestion 2014-10-22 10:40:34

1

你必须定义一个定制WebViewClientWebView处理这个问题。

这个问题已经回答了herehere