0
Je veux utiliser un searchView
pour chercher dans webview
, quand je recherche dedans, webview a changer et zoomer heppeninig, j'utilise webView pour montrer le livre epub dedans J'ai montré plus de détails dans deux capture d'écran (après, avant) et coller mon code ici
mON OS Android Device est Android KitKat éviter de zoomer dans le webview lors de l'utilisation searchview
plus en détail dans le code:
@Override
public boolean onCreateOptionsMenu(Menu menu) {
// Inflate the menu; this adds items to the action bar if it is present.
getMenuInflater().inflate(R.menu.menu_activity_reader, menu);
this.menu = menu;
final SearchView searchView = (SearchView) MenuItemCompat.getActionView(menu.findItem(R.id.action_search));
SearchManager searchManager = (SearchManager) getSystemService(SEARCH_SERVICE);
searchView.setSearchableInfo(searchManager.getSearchableInfo(getComponentName()));
searchView.setSubmitButtonEnabled(true);
searchView.setOnQueryTextListener(new SearchView.OnQueryTextListener() {
@Override
public boolean onQueryTextSubmit(String query) {
if (!query.isEmpty()) {
searchEnabled = true;
if (!flag) {
webView.findAllAsync(query);
flag = true;
try {
Method m = WebView.class.getMethod("setFindIsUp", Boolean.TYPE);
m.invoke(webView, true);
} catch (Throwable ignored) {
}
} else {
webView.findNext(true);
}
Log.i("webview", webView.getScrollY() + "");
}
return false;
}
@Override
public boolean onQueryTextChange(String newText) {
if (newText.isEmpty()) {
try {
Method m = WebView.class.getMethod("setFindIsUp", Boolean.TYPE);
m.invoke(webView, false);
} catch (Throwable ignored) {
}
}
flag = false;
return true;
}
});
searchView.setOnCloseListener(new SearchView.OnCloseListener() {
@Override
public boolean onClose() {
try {
Method m = WebView.class.getMethod("setFindIsUp", Boolean.TYPE);
m.invoke(webView, false);
} catch (Throwable ignored) {
}
return false;
}
});
return true;
}