我的应用程序上有一个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;
}
});


但是什么也没发生。

最佳答案

试试这个

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;
  }
});


请告诉我它是否对您有用,因为我目前无法测试。

关于android - 带有shouldOverrideUrlLoading和baseURL的WebView,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/9529882/

10-10 12:46