我使用
将HTML加载到我的WebViewthis.webViewer.loadDataWithBaseURL(BASE_URL, completeNewsTemplate,
"text/html", "UTF-8", null);
其中BASE_URL =“http://www.example.ru”我将它用于WebView加载带有相对图像的图像src的
如果在HTML中,我得到像
这样的href链接<a href="http://www.example.ru" target="_blank">Example</a>
然后它只是重新加载当前的webview,而target属性确实为打开新窗口做了任何事情。
如何在新窗口中打开webview链接?
答案 0 :(得分:1)
这是解决方案。
如果您的链接等于基本网址,则WebView认为您只想使用当前页面。
您可以尝试抓住它
webViewer.setWebViewClient(new WebViewClient() {
@Override
public void onPageStarted(WebView view, String url, Bitmap favicon) {
System.out
.println("DetailViewActivity.onCreate(...).new WebViewClient() {...}.onPageStarted()");
super.onPageStarted(view, url, favicon);
}
@Override
public void onPageFinished(WebView view, String url) {
System.out
.println("DetailViewActivity.onCreate(...).new WebViewClient() {...}.onPageFinished()");
super.onPageFinished(view, url);
}
@Override
public boolean shouldOverrideUrlLoading(WebView view, String url) {
System.out
.println("DetailViewActivity.onCreate(...).new WebViewClient() {...}.shouldOverrideUrlLoading()");
return false;
}
});
但是,然后点击你在webView中的链接你永远不会被你的base_url解雇 shouldOverrideUrlLoading 或 onPageStarted onPageFinished 。
所以我的solition用于基本网址,而没有 www 前缀的其他网域。
此处示例如果您在域名www.example.com上使用base url example.com