用户单击时如何从WebView内的链接中提供URL

时间:2018-09-30 05:49:33

标签: java android jsoup

我有一个WebView。它包含由Jsoup过滤的页面。

    WebView cntContent;
    WebView cntComments;
    WebSettings webSettingsContent;
    WebSettings webSettingsComments;

        cntContent = findViewById(R.id.cntContent);
        cntComments = findViewById(R.id.cntComments);
        webSettingsContent = cntContent.getSettings();
        webSettingsComments = cntComments.getSettings();
        webSettingsContent.setDefaultFontSize(16);
        webSettingsComments.setDefaultFontSize(16);

        cntContent.setBackgroundColor(Color.TRANSPARENT);
        cntComments.setBackgroundColor(Color.TRANSPARENT);
        webSettingsContent.setAppCacheEnabled(true);
        webSettingsComments.setAppCacheEnabled(true);

        cntContent.loadDataWithBaseURL(contentUrl, contentFinal, "text/html", "utf-8", null);
        cntComments.loadDataWithBaseURL(contentUrl, commentsFinal, "text/html", "utf-8", null);
        cntContent.setClickable(true);

页面包含链接。 当用户单击链接并将URL放入String时如何提供链接的URL?

1 个答案:

答案 0 :(得分:0)

您应该做的是为WebView提供您自己的WebViewClient。 子类化WebViewClient并使用WebView方法setWebViewClient进行设置。 然后,在WebViewClient中重写“ shouldOverrideUrlLoading”方法,然后对链接进行任何操作。

WebView wv = new WebView();
 wv.setWebViewClient(new WebViewClient() {
            @Override
            public boolean shouldOverrideUrlLoading(WebView view, WebResourceRequest request) {
                String url = request.getUrl().toString();
                return false;
            }
        });