目前,我有我的应用程序的操作栏搜索查看。当我点击搜索图标时,SearchView会展开并按预期弹出键盘。单击SearchView框中的“X”按预期关闭SearchView。但是,当SearchView被激活时,我按下“后退”按钮,我的应用程序退出。这是正确的行为,但我试图现在要做的就是捕捉到后退按钮按下,只是把它关闭搜索查看(不是我的应用程序),当搜索查看可见。有没有办法在后退按钮上按程序调用SearchView OnCloseListener()?例如,像这样:如何以编程方式关闭SearchView?
// On a back button press, if we are currently searching,
// close the SearchView. Otherwise, invoke normal back button
// behavior.
public boolean onKeyDown(int keyCode, KeyEvent event) {
if (keyCode == KeyEvent.KEYCODE_BACK) {
if (isSearchViewVisible) {
SearchView searchView = (SearchView) menu.findItem(R.id.searchBox)
.getActionView();
// This method does not exist
searchView.invokeClose();
return true;
}
}
return super.onKeyDown(keyCode, event);
}
https://stackoverflow.com/a/46930606/1308990 – oiyio