博主最近做的项目需要实现一个搜索的功能
而且还需要即时搜索-----输入关键字就有结果(包含关键字)自动显示
这里说一下思路:
监听EditText里面输入的内容
使用系统提供的Filter对ListView进行过滤即可
下面贴出关键代码
//开启过滤 lv_search.setTextFilterEnabled(true); lv_search.setAdapter(new MyAdapter(this, strings)); //监听输入框的动作 et_search.addTextChangedListener(new TextWatcher() { @Override public void beforeTextChanged(CharSequence s, int start, int count, int after) { } @Override public void onTextChanged(CharSequence s, int start, int before, int count) { if (TextUtils.isEmpty(s.toString().trim())) lv_search.clearTextFilter();//搜索文本为空时,清除ListView的过滤 else lv_search.setFilterText(s.toStri