<分区>
我的 RecyclerView
默认显示按名称排序的项目(这就是它们从数据库中出来的方式)。我在操作栏中为用户提供了 4 个额外的排序选项。我正在考虑在 RecyclerView
中有 5 个列表,每个列表一个,另一个列表(只是一个引用)指向当前列表。当新数据到达时,列表得到适当的排序,当用户选择排序顺序时,当前列表得到适当的值,我调用 notifyDataSetChaged()
。这是一种合理的方法吗?
<分区>
我的 RecyclerView
默认显示按名称排序的项目(这就是它们从数据库中出来的方式)。我在操作栏中为用户提供了 4 个额外的排序选项。我正在考虑在 RecyclerView
中有 5 个列表,每个列表一个,另一个列表(只是一个引用)指向当前列表。当新数据到达时,列表得到适当的排序,当用户选择排序顺序时,当前列表得到适当的值,我调用 notifyDataSetChaged()
。这是一种合理的方法吗?
最佳答案
您不需要有多个列表,一个列表就足够了。 您只需根据需要订购它,然后在您的适配器中更换它,然后调用 notifyDataSetChanged() 要对数据进行排序,您可以在此处使用 Comparator : How to sort an ArrayList in Java 希望对你有帮助
关于android - 我应该如何为 RecyclerView 实现排序?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53635964/
相关文章:
android - 在 RecyclerView 的自定义适配器中膨胀时获取 nullpointerexception
android - 尝试在 android 中访问 SQLite 数据库时如何修复 SQLiteOpenHelper.getDatabaseLocked 错误?
android - 如何让 Recycler 在网格中查看前四个项目,然后在线性项目中查看
android - 在 recyclerview 中滚动到顶部加载更多数据
android - 打开联系人时出现问题 - Android
java - searchview.onQueryTextListener 之后得到错误的位置 recyclerview