我已经知道如何通过查询获取排序后的数据并将其传递给Recycler视图,* 但它只会添加到RecyclerView,而不会替换已经存在的项目 *。将代码上载到Pastebin,因为与问题无关的代码在类中。
我的数据库帮助程序类= https://pastebin.com/fXHw5ccb
自定义适配器类= https://pastebin.com/4epLqWzJ
主活动类= https://pastebin.com/h5mDQunv
包括
customAdapter.notifyDataSetChanged();
recyclerView.setAdapter(customAdapter);
或者移除它并不能解决问题。
外观:https://i.imgur.com/C60ur8b.png
单击menu sort item后我希望它的外观:https://i.imgur.com/wjZP9yX.png
2条答案
按热度按时间7gcisfzg1#
看起来好像您多次调用
storeFoodDataInArrayList()
,填充了food_ID
数组,但您从未清除该数组。在填充
food_ID
数组之前清除该数组。dwbf0jvd2#
已解决:必须将自定义适配器传递给自定义对象,并从该对象读取ArrayList,这使我可以基于SQL查询进行排序。