码迷,mamicode.com
首页 > 移动开发 > 详细

android searchView的关闭事件

时间:2014-09-22 17:29:03      阅读:375      评论:0      收藏:0      [点我收藏+]

标签:des   android   style   io   os   java   ar   sp   cti   

这几天用到了android的searchView,想在关闭的时候触发一个事件。

首先看了下,发现有个setOnCloseListener,大喜过望,认为就是它了,结果点了半天没有反应,然后上午搜搜,总结一下无外乎说的以下几种情况:

1 源码里面,实现setOnCloseListener里的close()方法,有一个是清空输入框,也许会和searchView的setOnQueryTextListener接口onQueryTextSubmit(String query)冲突

setOnCloseListener只能在3.2下才能有效,而ICS貌似不行

而原生的SeachView 是 (SearchView) menuItem.getActionView();

那么就可以从menuItem入手,看其中有不有什么事件响应,一看,当然有

最后查了下资料,果然是这样,如下:

if (currentVersion >= Build.VERSION_CODES.ICE_CREAM_SANDWICH) {
            menuItem.setOnActionExpandListener(new MenuItem.OnActionExpandListener() {
                @Override
                public boolean onMenuItemActionExpand(MenuItem item) {
                    return true;
                }

                @Override
                public boolean onMenuItemActionCollapse(MenuItem item) {
                    //TODO 添加关闭事件
                    return true;
                }
            });
        } else {
            mSearchView.setOnCloseListener(new SearchView.OnCloseListener() {
                @Override
                public boolean onClose() {
                   //TODO 添加关闭事件
                    return false;
                }
            });
        }


android searchView的关闭事件

标签:des   android   style   io   os   java   ar   sp   cti   

原文地址:http://my.oschina.net/luozheng/blog/316955

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!