2016-02-29 127 views
2

如何查看烤麪包,當我點擊webview中的一個網址而不轉到url時,只顯示烤麪包消息?Android在webview中創建一個帶有鏈接的烤麪包

wv = (WebView) findViewById(R.id.wV); 
wv.loadData("<a href=\"#_ftn0\">[0]</a>", "text/html", "UTF-8"); 

if(OnClickedUrl == "#_ftn0") 
Toast.makeText(getApplicationContext(), OnClickedUrl, Toast.LENGTH_LONG).show(); 
+0

你在哪裏得到OnClickedUrl的價值? –

+0

'OnClickedUrl'只是一個例子。沒有這樣的事情只是爲了理解這個問題。 – ATES

回答

1

你應該重寫URL負載象下面這樣:

wv.loadData("<a href=\"http://www.example.com/#_ftn0\">[0]</a>", "text/html", "UTF-8"); 

wv.setWebViewClient(new MyWebViewClient()); 

public class MyWebViewClient extends WebViewClient { 
    @Override 
    public boolean shouldOverrideUrlLoading(WebView view, String url) { 
     Toast.makeText(getApplicationContext(), url, Toast.LENGTH_LONG).show(); 
     if(url.equal(urlyouclicked)){//here you compare the url you click 
      Toast.makeText(getApplicationContext(), OnClickedUrl, Toast.LENGTH_LONG).show(); 
     } 
     return true; 
    } 
} 
+0

使網址** urlyouclicked **是完整的路徑url – MinFu

+0

很奇怪,當我點擊鏈接沒有反應?我也厭倦了,如果博客太。 – ATES

+0

嘗試調用toast消息之前,如果條件在shouldovrrideurloading ** Toast.makeText(getApplicationContext(),url,Toast.LENGTH_LONG).show(); ** – MinFu

0

您可以創建一個shouldOverrideUrlLoading 1事件(參閱API參考鏈接1)和方法內把你的代碼。但是,您需要指定加載應該被覆蓋的url。如果您想覆蓋所有網址,只需刪除if語句即可。

wv.setWebViewClient(new WebViewClient() { 
    @Override 
    public boolean shouldOverrideUrlLoading(WebView view, String url) { 
     //Make sure the url to override loading is the correct one 
     if (url.contains("www.xxx.com")) { 
      return true; 
     } 
     return false; 
    } 
    @Override 
    public void onLoadResource(WebView view, String url){ 
     //Make sure the url to override loading is the correct one 
     if (url.contains("www.xxx.com")) { 
      //create toast message here 
     } 
    } 
}); 
+0

我已經厭倦'shouldOverrideUrlLoading',但是當我點擊'[0]'url時,不能得到任何反應。 – ATES

+0

該問題不是網址,因爲我嘗試的代碼沒有阻止而沒有工作。 – ATES

+0

嘗試在'onLoadResource'內創建Toast。 – jackson95

0

除了覆蓋shouldOverrideUrlLoading的網址應符合以下格式: 「://」,否則將無法正常工作。所以你可以修改「#_ftn0」爲「example://#_ ftn0」

相關問題