我正在尝试在我的webView中搜索单词。这是我的搜索方法:
public void filterWebView(String query){
if (query != null) {
mQuery = query;
mWebView.setWebViewClient(new WebViewClient() {
@Override
public void onPageFinished(WebView view, String url) {
if (android.os.Build.VERSION.SDK_INT < Build.VERSION_CODES.JELLY_BEAN) {
view.findNext(true);
int c = view.findAll(mQuery);
try {
Method method = WebView.class.getMethod("setFindIsUp", Boolean.TYPE);
method.invoke(view, true);
} catch (Throwable ignored) {}
} else {
view.findNext(true);
view.findAllAsync(mQuery);
try {
Method method = WebView.class.getMethod("setFindIsUp", Boolean.TYPE);
method.invoke(view, true);
} catch (Throwable ignored) {}
}
}
});
mWebView.loadUrl(mDocUrl);
}
}
它适用于API版本&lt; 16,但对于API 16和&gt; 16,此方法查找所有单词,但findNext()不起作用。
如果我在API&lt; 16中设置查询并调用此方法10次,则会获得下一个结果(如果存在),但每次突出显示相同的单词时,在API&gt; 16中。
我的方法的第二部分有什么问题,在其他之后{... ???