2014-09-24 52 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。

我不知道你的實施。但嘗試重寫相同的方法並啓動另一個實例。通過任何方式傳遞網址並加載它。我認爲這會起作用。