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