我有一个混合应用程序,它使用 WebView 从我自己的网站呈现外部 html。它有一个问题,如果单击任何链接,它会启动一个浏览器窗口。我发现这段代码可以帮助我,而且它有效:
myWebView.setWebViewClient(new WebViewClient(){
@Override
public boolean shouldOverrideUrlLoading(WebView view, String url) {
view.loadUrl(url);
return false;
}
});
但现在的问题是我希望它不适用于其中包含 target=_blank 的链接。所以任何正常的链接仍然在 WebView 中打开,而带有 target=_blank 的链接应该在新的浏览器窗口中打开。
我们有什么办法可以做到这一点?
谢谢
原文由 mim 发布,翻译遵循 CC BY-SA 4.0 许可协议
第一的,
mWebView.getSettings().setSupportMultipleWindows(true);
然后在
WebChromeClient
中,覆盖OnCreateWindow()