0
我想用searchView
在webview
中搜索,当我搜索它时,webview有更改和放大heppeninig,我使用webView来显示epub书,我在其中显示了更多的细节2个截图(后,前)和粘贴我的代码在这里
我的Android设备的操作系统就是Android奇巧 防止在使用searchview时缩放webview
更详细的代码:
@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;
}