2012-03-02 63 views
1

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

我想为所有以“/”开头的链接设置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; 
}      
}); 

但没有任何反应。

回答

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

请让我知道它是否适合你,因为我当时无法进行测试。

+0

谢谢,它的工作 – 2012-03-02 08:37:02

+0

这是一种享受:) – 2012-03-02 08:37:24

相关问题