Android-是否有任何功能或方法可以在HTML Webview文本中搜索特定文本

时间:2018-08-18 16:25:01

标签: java android webview textview

您好,所有Android程序员,有没有办法在HTML Webview中搜索特定单词?还是说当您在搜索框中输入一个单词并进行搜索时,它会自动滚动到该单词或突出显示该单词,但该文本不在TextView中,而该文本是使用WebView格式化的吗?当然,当您将段落存储在数据库中时有可能并且可以轻松地对其进行搜索,但是问题在于它的格式不像HTML那样,这可能吗? Please see the image on this link

2 个答案:

答案 0 :(得分:0)

For Highlighting search word:

    titleWebView.setWebViewClient(new WebViewClient() {

        @Override
        public void onPageFinished(WebView view, String url) {
            if (searchText != null && !searchText.equals("")) {
                int i = titleWebView.findAll(searchText);
                Toast.makeText(getApplicationContext(), "Found " + i + " results !",
                    Toast.LENGTH_SHORT).show();
                try {
                    Method m = WebView.class.getMethod("setFindIsUp", Boolean.TYPE);
                    m.invoke(titleWebView, true);
                } catch (Throwable ignored) {
                }
                searchText = "";
            }
        }
    });

答案 1 :(得分:0)

您可以通过在网络视图中阅读页面的in_array来实现。

内部

  

在webviewclient的onPageFinished()中添加此方法:

source
  

上述方法processHTML()的声明有助于   将源html处理为String / JSON Obj。

webView.loadUrl("javascript:window.HTMLOUT.processHTML('<html>'+" +
                                        "document.getElementsByTagName('html')[0].innerHTML+'</html>');");