【问题标题】:Android WebView loadDataWithBaseURL with link equals BaseURL works incorrectly带有链接等于 BaseURL 的 Android WebView loadDataWithBaseURL 工作不正确
【发布时间】:2013-03-20 00:01:07
【问题描述】:

我使用

将 HTML 加载到我的 WebView
this.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在新窗口中打开链接?

【问题讨论】:

    标签: android webview href


    【解决方案1】:

    这里是解决方案。

    如果您的链接等于基本 url 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 中单击链接,您永远不会被解雇 shouldOverrideUrlLoadingonPageStartedonPageFinished 与您的 base_url。

    所以我的解决方案是用于基本 url 另一个没有 www 前缀的域。

    如果您的域 www.example.com 使用基本网址 example.com,则此处示例

    【讨论】:

      猜你喜欢
      • 2016-09-22
      • 1970-01-01
      • 2017-10-08
      • 2021-08-30
      • 2019-12-01
      • 1970-01-01
      • 1970-01-01
      • 2013-05-09
      • 2013-09-13
      相关资源
      最近更新 更多