0
我有一個SearchView和一個RecyclerView裏面我的片段,我創建getFilter
方法添加搜索功能,但我的問題是這樣的SearchView
不工作,因爲它應該我面臨兩個問題,下面解釋SearchView無法正常工作
1 - 假設我有一個數據被搜索類似 {字符串1,字符串兩個字符串3},如果我進入s
然後我得到的結果只有String1
手段正在根據硬道理得到結果我字符串
請參閱圖片以獲取我想要解釋的內容
in this image you can see am getting the result according to the last word of my String
我這是怎麼產生的GetFilter
我的適配器類
private static class UserFilter extends Filter {
private final NotesAdapter adapter;
private final List<Information> originalList;
private final List<Information> filteredList;
private UserFilter(NotesAdapter adapter, List<Information> originalList) {
super();
this.adapter = adapter;
this.originalList = new LinkedList<>(originalList);
this.filteredList = new ArrayList<>();
}
@Override
protected FilterResults performFiltering(CharSequence constraint) {
filteredList.clear();
final FilterResults results = new FilterResults();
if (constraint == null || constraint.length() == 0) {
filteredList.addAll(originalList);
} else {
final String filterPattern = constraint.toString().toLowerCase().trim();
for (final Information user : originalList) {
if (user.title.contains(filterPattern)) {
filteredList.add(user);
}
}
}
results.values = filteredList;
results.count = filteredList.size();
return results;
}
@Override
protected void publishResults(CharSequence constraint, FilterResults results) {
adapter.filteredUserList.clear();
adapter.filteredUserList.addAll((ArrayList<Information>) results.values);
adapter.notifyDataSetChanged();
} }
內,這是怎麼離開這個片段使用這種方法
Search_View.setOnQueryTextListener(new SearchView.OnQueryTextListener() {
@Override
public boolean onQueryTextSubmit(String Text) {
Log.v(""+Text , " searchView TextSubmit");
Log.d("tag", "notesAdapter=" + notesAdapter);
notesAdapter.getFilter().filter(Text);
return true;
}
@Override
public boolean onQueryTextChange(String newText) {
Log.v(""+newText , " searchView TextChange");
Log.d("tag", "notesAdapter=" + notesAdapter);
notesAdapter.getFilter().filter(newText);
return true;
}
});
如果有人知道我在做什麼榮比請幫我,從昨天
你肯定title屬性存儲在低位的情況下? – fillobotto
@FilippoB你的意思是?我沒有得到你 – kingBach
你比較'user.title'小寫字符串,但實際上'user.title'不是小寫 – fillobotto