美文网首页
Android Webview点击target=_blank无反

Android Webview点击target=_blank无反

作者: 走在冷风中吧 | 来源:发表于2017-09-21 17:54 被阅读805次

    跳转链接如果添加target=_blank会回调WebChromeClient的onCreateWindow方法, 需要进行适配,如下:

      mWebView.setWebChromeClient(new WebChromeClient() {
             @Override
             public boolean onCreateWindow(WebView view, boolean isDialog, boolean isUserGesture, Message resultMsg) {
                    WebView newWebView = new WebView(view.getContext());
                    newWebView.setWebViewClient(new WebViewClient() {
                        @Override
                        public boolean shouldOverrideUrlLoading(WebView view, String url) {
                        // 在此处进行跳转URL的处理, 一般情况下_black需要重新打开一个页面, 这里我直接让当前的webview重新load了url
                            mWebView.loadUrl(url);
                            return true;
                        }
    
                    });
                    WebView.WebViewTransport transport = (WebView.WebViewTransport) resultMsg.obj;
                    transport.setWebView(newWebView);
                    resultMsg.sendToTarget();
                    return true;
                }
            });
    

    相关文章

      网友评论

          本文标题:Android Webview点击target=_blank无反

          本文链接:https://www.haomeiwen.com/subject/rddtextx.html