SearchView:无法捕获close事件

时间:2013-01-07 02:30:18

标签: android actionbarsherlock

我使用ActionBarShellock 4.2。我认为单击关闭按钮时会调用OnCloseListener(),但是当我这样做时没有响应。

mSearchView.setOnCloseListener(new OnCloseListener() {
        @Override
        public boolean onClose() {
            Toast.makeText(mContext, "OnCloseListener", 1000).show();
            return false;
        }
    });

我试图调用getChildAt(index)来获取关闭按钮。然后我认为这是不安全的,因为SearchView不是我自己的代码。那么,我该如何捕捉近似事件呢?我做错了吗?
提前谢谢。

enter image description here

1 个答案:

答案 0 :(得分:3)

只需获取menuItem,然后输入setOnActionExpandListener。然后覆盖unimplents方法。

@Override
public boolean onMenuItemActionExpand(MenuItem item) {

    return true;
}

@Override
public boolean onMenuItemActionCollapse(MenuItem item) {

   //do something on close
   // you must return true
    return true;
}

Hack完成了 祝你好运