折叠搜索小部件android
我已经按照android开发者网站上的官方指南在操作栏中实现了搜索小部件。小部件以折叠状态启动。当用户单击搜索图标时,它会展开,并弹出键盘,用户可以进行搜索。用户按enter键后,将在顶部启动一个新活动,处理并显示搜索。当用户按backs返回到上一个活动(搜索之前)时,我希望搜索视图会自动折叠,因为用户刚刚进行了搜索。我该怎么做?现在,用户必须在这之后按back键2,一次关闭键盘,一次折叠搜索小部件。我试过了折叠搜索小部件android,android,search,widget,Android,Search,Widget,我已经按照android开发者网站上的官方指南在操作栏中实现了搜索小部件。小部件以折叠状态启动。当用户单击搜索图标时,它会展开,并弹出键盘,用户可以进行搜索。用户按enter键后,将在顶部启动一个新活动,处理并显示搜索。当用户按backs返回到上一个活动(搜索之前)时,我希望搜索视图会自动折叠,因为用户刚刚进行了搜索。我该怎么做?现在,用户必须在这之后按back键2,一次关闭键盘,一次折叠搜索小部件。我试过了 searchManager.setOnDismissListener(new OnDi
searchManager.setOnDismissListener(new OnDismissListener() {
public void onDismiss() {
searchView.setIconified(true);
}
});
这会折叠键盘,但用户仍需再次按下“上一步”按钮才能真正折叠视图并将其移回操作栏中的位置。我知道这是一个老问题,但我只是在寻找答案时遇到了它。我已经完全按照上面的方法进行了尝试,但实际上需要折叠菜单项,而不是SearchView。下面是代码片段:-
// I do this in onCreateOptionsMenu
mSearchMenuItem = menu.findItem(R.id.menu_item_search);
// Call this when you want to collapse it
mSearchMenuItem.collapseActionView();
希望这对其他人有所帮助。您可以使用@Ryan的答案,但如果您必须支持较旧的版本,您可以使用android.support.v4.view.MenuItemCompat来实现:
MenuItemCompat.collapseActionView(searchMenuItem);
这是迄今为止最简单、最优雅的方法。