如何根据对象字段过滤RecyclerView适配器内的列表

时间:2016-06-20 22:25:33

标签: android android-recyclerview android-arrayadapter

所以我在RecyclerView内有一个曲目列表。关于在RecyclerView中显示曲目,一切正常。但是我正在努力根据他选择的用户偏好过滤public class TrackAdapter extends RecyclerView.Adapter<TrackAdapter.ViewHolder> { private LayoutInflater layoutInflater; List<Track> tracks; private Context context; private String length; private ClickListener clickListener; public TrackAdapter(Context context, List<Track> tracks){ this.context=context; this.tracks=tracks; layoutInflater=layoutInflater.from(context); public void setlength (String level) { this.length = length ; }} 。 每个轨道都具有短,长或中等属性。我想让用户能够选择偏好,如果他想要显示所有时段或特定时段。 我现在的问题是过滤结果。

<ListPreference android:title="@string/level"
    android:defaultValue="@string/length_default"
    android:entries="@array/length_enteries"
    android:entryValues="@array/length_entery_values"
    android:key="@string/length_key"
    />

和xml中的首选项:

public void setlevel(){
SharedPreferences sharedPreferences= PreferenceManager.getDefaultSharedPreferences(this);
level=sharedPreferences.getString(getString(R.string.length_key),getString(R.string.length_default));
trackAdapter.setLevel(level);}
主要活动中的

: 我得到所选长度过滤器的值如下:

JSON.parse(items[item].Specifications)

0 个答案:

没有答案