带有shouldOverrideUrlLoading和baseURL的WebView

时间:2012-03-02 08:01:09

标签: android android-webview

我的应用程序上有一个WebView,一些链接是URL地址。 其中一些没有baseURL,只有像“/ abc / abc”

这样的东西

我想为以“/”开头的所有链接设置baseURL。 我试过这个:

WebView wv = (WebView) findViewById(R.id.EditorialWebView);
wv.setBackgroundColor(0x00000000);
wv.getSettings().setJavaScriptEnabled(true);
wv.loadDataWithBaseURL("", editorialBoard, "text/html", "utf-8", "");
wv.setWebViewClient(new WebViewClient()
    {
@Override
public boolean shouldOverrideUrlLoading(WebView wv, String url) {
if (url.startsWith("/")) 
    {
wv.loadUrl("http://www.mdpi.com"+url);
}  
return true;
}                      
});

但没有任何反应。

1 个答案:

答案 0 :(得分:2)

尝试这样的事情

myWebView = (WebView) findViewById(R.id.webview);
myWebView.setWebViewClient(new WebViewClient() {
  public boolean shouldOverrideUrlLoading(WebView view, String url) {
    if(url.startsWith("/")) {
      Uri u = Uri.fromParts("http://www.domain.com", url, "");
      view.loadUrl(u);
    }
    return true;
  }
});

如果它对你有用,请告诉我,因为我现在无法测试它。