如果WebView页面中链接的<a>标签是target=”_blank”,而你的WebView又没有做任何处理时,点击没有任何反应
解决方案如下:
1、设置webview支持多窗口
webSetting.setSupportMultipleWindows(true);
2、设置拦截跳转
在WebChromeClient中重写onCreateWindow方法。
webView.setWebChromeClient(new WebChromeClient() {
...
@Override
public boolean onCreateWindow(WebView webView, boolean b, boolean b1, Message message) {
YcWebView x5WebView = new YcWebView(mContext);
YcWebView.WebViewTransport transport = (WebView.WebViewTransport) message.obj;
//x5WebView.setWebChromeClient(new YcWebView.YcWebChromeClient());
x5WebView.setWebViewClient(new WebViewClient() {
@Override
public boolean shouldOverrideUrlLoading(WebView view, String url) {
//拦截url,跳转新窗口
MainActivity.startActivity(mContext,url);
//防止触发现有界面的WebChromeClient的相关回调
return true;
}
});
transport.setWebView(x5WebView);
message.sendToTarget();
return true;
}
});
Android学习交流群:523487222
(如果您觉得有用,欢迎加入,一起学习进步)
点击链接加入群【Android学习群】