我在操作栏菜单中创建了一个操作栏搜索。 好吧,如果我点击屏幕上的任何一个按钮或点击,我试图让它进入正常状态。这是我的代码:
public boolean onCreateOptionsMenu(Menu menu) {
// Inflate the menu; this adds items to the action bar if it is present.
getMenuInflater().inflate(R.menu.menu_main, menu);
final EditText editText = (EditText) menu.findItem(
R.id.menuSearch).getActionView();
editText.addTextChangedListener(textWatcher);
menuItem = menu.findItem(R.id.menuSearch);
menuItem.setOnActionExpandListener(new MenuItem.OnActionExpandListener() {
@Override
public boolean onMenuItemActionCollapse(MenuItem item) {
menuItem.collapseActionView();
// Do something when collapsed
return true; // Return true to collapse action view
}
@Override
public boolean onMenuItemActionExpand(MenuItem item) {
//editText.clearFocus();
return true; // Return true to expand action view
}
});
return true;
}
效果很好。但是,它没有进入正常状态。我用过这个功能
menuItem.collapseActionView();
但是,没用。提前致谢
答案 0 :(得分:2)
试试这段代码
menuItem.collapseActionView();
内
public boolean onOptionsItemSelected(MenuItem item) {
答案 1 :(得分:1)
框架调用onMenuItemCollapsed()以通知您的代码,搜索视图已折叠。调用" menuItem.collapseActionView()"对那个方法体没有好处。您对collapseActionView()的调用应该在您要强制折叠视图的代码中,例如Go按钮的按键处理程序。