Android Webview FindNext跳过突出显示的单词

时间:2015-03-31 14:40:22

标签: android text webview find

我使用按钮在网页浏览中查找文字。它工作正常,结果正确突出显示。

但是,我有另一个按钮来执行该功能"查找下一个"。它有效,但只将webview滚动到奇数结果(1,3,5,7,9 ......),跳过结果对(2,4,6,8 ...)。

结果全部突出显示(1,2,3,4,5 ......),但FindNext函数会跳过奇怪的结果。

代码我用于"找到下一个"功能是这样的:

    public void pesq_proxima (View view) {

    WebView webview1 = (WebView)findViewById(R.id.webView1);
    EditText edittext1 = (EditText)findViewById(R.id.editText1);

    webview1.findAllAsync(edittext1.getText().toString());
    try {
        webview1.findNext(true);
    } catch (Exception ignored) {
    }
}

有人可以帮助我吗?

非常感谢。

2 个答案:

答案 0 :(得分:0)

我认为你应该检查edittext1.getText()。toString()是否改变了如果改变了webview1.findAllAsync(edittext1.getText()。toString()); else webview1.findNext(true);

答案 1 :(得分:0)

也许您应该尝试在 findAllAsync()的第一个异步匹配之后运行 findNext(),因此您可以使用WebView.FindListener这样。

webview.setFindListener(new FindListener() {

    @Override
    public void onFindResultReceived(int activeMatchOrdinal, int numberOfMatches, boolean isDoneCounting) {
        webView.findNext(true);
    }
});