所以我说的是一个RecyclerView,它显示从服务器/DB查询的筛选/排序项目列表(筛选/排序标准是预设的,不取决于用户,所以使用SearchView没有意义)。
我考虑在自定义适配器的setData
函数中进行排序/过滤,如下所示:
fun setData(items: List<GenericObject>) {
mValues.clear()
mValues.addAll(items)
mValues.filter { // filter conditions }
notifyDataSetChanged()
}
但这似乎不起作用。我可以使用什么替代方法,或者做这件事的首选方法是什么?
适配器不负责排序。这是提供数据的人的责任。
实际上你可以使用ListAdapter
为你的RecyclerView +livedata.map { list -> list.filter {...}}