1号代码必须有,如果没有这个方法,搜索结果不会实时更新,最终按了键盘上的search按钮(相当于确认按钮,回车)才会更新搜索结果。
2号代码就是以LitePal的方式实现select * from table-name where field-name like %String% ;
同样的效果。
searchView.setOnQueryTextListener(new SearchView.OnQueryTextListener() {
@Override
public boolean onQueryTextSubmit(String query) {
return false;
}
@Override
public boolean onQueryTextChange(String newText) {
if(newText.isEmpty()){
taskAdapter.initList();
1. taskAdapter.notifyDataSetChanged();
}else {
2. taskAdapter.list = DataSupport.where("name like ?","%"+newText+"%").find(Task.class);
1. taskAdapter.notifyDataSetChanged();
}
return false;
}
});