我使用按钮在网页浏览中查找文字。它工作正常,结果正确突出显示。
但是,我有另一个按钮来执行该功能"查找下一个"。它有效,但只将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) {
}
}
有人可以帮助我吗?
非常感谢。
答案 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);
}
});