我有一个包含图像和文本的自定义网格适配器(自定义对象),在Gridview之上,我添加了Edittext,当用户在Edittext中输入文本时,我想添加搜索功能。
非常感谢您的帮助。
您可以使用TextWatcher来侦听EditText上的文本更改,然后尽快更新GridView的内容。
// Perform search
editText.addTextChangedListener(new TextWatcher() {
@Override
public void onTextChanged(CharSequence s, int start, int before, int count) {
performSearch(s.toString());
}
@Override
public void afterTextChanged(Editable s) { }
@Override
public void beforeTextChanged(CharSequence s, int start, int count, int after) {}
});
以某种方式过滤数据后,只需更新自定义适配器上设置的内容
// Changes the data used inside your custom adapter
public void update(ArrayList<MyDataClass> filteredDataList){
if(filteredDataList != null){
adapterDataList = filteredDataList;
}
}