2014-09-24 34 views
2

如何打开在其他活动网页视图中显示的网页视图中的链接? 我有加载数据的网络视图,并有一个链接,我需要在其他活动的其他网络视图中打开我怎么能做到这一点?我怎样才能打开其他web视图活动的链接?

+0

我的网页浏览代码 - web1.loadData(htmldata,“text/html; charset = utf-8”,null); \t \t web1.setWebViewClient(新WebViewClient(){ \t \t @覆盖 \t \t公共布尔shouldOverrideUrlLoading(的WebView视图,字符串URL){ \t \t view.loadUrl(URL); \t \t返回FALSE; \t \t } \t \t}); – 2014-09-24 19:31:04

+0

可能的重复[如何从Web视图加载其他浏览器中的链接?](http://stackoverflow.com/questions/26010589/how-can-i-load-a-link-in-other-browser-从网络浏览) – 323go 2014-09-24 19:35:14

+0

此代码是用于打开手机的其他网络浏览器中的链接,但现在我需要的是该链接打开其他活动的其他网络视图。你能帮我解决这个问题吗? – 2014-09-24 19:44:14

回答

0

这是我的情况:

public class WebPageFragment extends Fragment { 
    private String mUrl; 
    private WebView mWebView; 

    @Override 
    public void onCreate(Bundle savedInstanceState) { 
     super.onCreate(savedInstanceState); 
     setRetainInstance(true); 

     mUrl = getActivity().getIntent().getData().toString(); 
    } 

    @SuppressLint("SetJavaScriptEnabled") 
    @Override 
    public View onCreateView(LayoutInflater inflater, ViewGroup parent, Bundle savedInstanceState) { 
     View v = inflater.inflate(R.layout.fragment_web_page, parent, false); 

     /** some settings here **/ 

     mWebView = (WebView) v.findViewById(R.id.webPage_webView); 

     mWebView.getSettings().setJavaScriptEnabled(true); 

     mWebView.setWebViewClient(new WebViewClient() { 
      @Override 
      public boolean shouldOverrideUrlLoading(WebView view, String url) { 
       Uri uri = Uri.parse(url); 
       Intent i = new Intent(getActivity(), WebPageActivity.class); 
       i.setData(uri); 
       startActivity(i); 
       return true; 
      } 
     }); 

     mWebView.loadUrl(mUrl); 

     return v; 
    } 
} 

的关键是覆盖shouldOverrideUrlLoading(WebView view, String url)方法。 在我的情况下,我只是启动相同的活动来加载Url。

我不知道你的实施。但尝试重写相同的方法并启动另一个实例。通过任何方式传递网址并加载它。我认为这会起作用。

相关问题