首页 > 移动平台 > 详细

android searchView的关闭事件

时间:2014-09-22 15:30:14      阅读:742      评论:0      收藏:0      [点我收藏+]

这几天用到了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的关闭事件

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

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!