后退按钮不折叠 SearchView
Back button not collapsing SearchView
我的 AppCompat 工具栏中有一个 android.support。v7.widget.SearchView。
我单击“搜索”按钮展开 MenuItem 的 ActionView,一切正常,直到我按下设备的硬件“后退”按钮。这会隐藏键盘,并且 SearchView 的 EditText 失去焦点并且其光标消失,但该项目不会折叠回搜索图标。相反,搜索图标右侧的菜单项变为 focussed/highlighted,这是……不对的。再按回去不行
我试过以各种方式检测后退键,例如将 OnKeyListener 添加到 SearchView 或其 EditText,但它没有触发。按操作栏中的向上按钮正是我需要的,所以我只需要检测返回按钮。
我的设置唯一奇怪的是 SearchView 本身不在布局中 - 如果我添加它,它会成功构建,但在运行时崩溃。出于某种原因。
我有 expand/collapse 的侦听器,仅在单击向上按钮时检测到折叠,按下后退按钮时不会触发。
谢谢
这是我设置 SearchView 的代码:
MenuItemCompat.setShowAsAction(menuItem, MenuItem.SHOW_AS_ACTION_ALWAYS | MenuItem.SHOW_AS_ACTION_COLLAPSE_ACTION_VIEW);
final SearchView searchView = new MyobSearchView(activity);
MenuItemCompat.setActionView(menuItem, searchView);
MenuItemCompat.setOnActionExpandListener(menuItem, new FocusSearchFieldActionExpandListener(searchView, androidUtils));
您可以像这样覆盖 onBackPressed() 方法来做到这一点:
@Override
public void onBackPressed() {
// do what you want
}
我的 AppCompat 工具栏中有一个 android.support。v7.widget.SearchView。
我单击“搜索”按钮展开 MenuItem 的 ActionView,一切正常,直到我按下设备的硬件“后退”按钮。这会隐藏键盘,并且 SearchView 的 EditText 失去焦点并且其光标消失,但该项目不会折叠回搜索图标。相反,搜索图标右侧的菜单项变为 focussed/highlighted,这是……不对的。再按回去不行
我试过以各种方式检测后退键,例如将 OnKeyListener 添加到 SearchView 或其 EditText,但它没有触发。按操作栏中的向上按钮正是我需要的,所以我只需要检测返回按钮。
我的设置唯一奇怪的是 SearchView 本身不在布局中 - 如果我添加它,它会成功构建,但在运行时崩溃。出于某种原因。
我有 expand/collapse 的侦听器,仅在单击向上按钮时检测到折叠,按下后退按钮时不会触发。
谢谢
这是我设置 SearchView 的代码:
MenuItemCompat.setShowAsAction(menuItem, MenuItem.SHOW_AS_ACTION_ALWAYS | MenuItem.SHOW_AS_ACTION_COLLAPSE_ACTION_VIEW);
final SearchView searchView = new MyobSearchView(activity);
MenuItemCompat.setActionView(menuItem, searchView);
MenuItemCompat.setOnActionExpandListener(menuItem, new FocusSearchFieldActionExpandListener(searchView, androidUtils));
您可以像这样覆盖 onBackPressed() 方法来做到这一点:
@Override
public void onBackPressed() {
// do what you want
}