如何在RecyclerView中制作更专业的搜索过滤器

时间:2018-01-25 12:14:31

标签: android android-recyclerview filtering searchview

我使用了recyclerview过滤器

我想在更相似的基础上显示数据的排序,而不是基于id

例如

当我搜索树时,订单显示如下

ID为1的数据 - 大树

ID为2的数据 - 树

虽然最好显示这个

1树

2大树

我的过滤方法 我应该在这里做些改动吗?

@Override
    public Filter getFilter() {
        return new Filter() {
            @Override
            protected FilterResults performFiltering(CharSequence constraint) {
                String charString = constraint.toString();
                ArrayList<Tabir> filterList = new ArrayList<>();
                for (Tabir tabir : mArrayList) {
                    if (tabir.getTitle().toLowerCase().contains(charString)) {
                        filterList.add(tabir);
                    }
                }
                mFilteredList = filterList;

                FilterResults filterResults = new FilterResults();
                filterResults.values = mFilteredList;
                return filterResults;
            }

            @Override
            protected void publishResults(CharSequence constraint, FilterResults results) {

                notifyDataSetChanged();
                Log.e(MainActivity.TAG, "results=" + results);
            }
        };
    }

0 个答案:

没有答案