我有一个列表,任何用户都可以随时更新。该列表显示在 RecyclerView 中。我想实时更新此列表,以便用户可以获得更好的用户体验,因为用户不需要多次执行刷新。现在的问题是,如何实时更新此列表?
答案 0 :(得分:4)
使用RecyclerView,您可以使用适配器更新单项,项目范围或整个列表。
您必须使用RecyclerView
适配器的方法,例如adapter#notifyItem***
或adapter#notifyDataSetChanged()
(这将更新RecyclerView中的整个项目列表)。
class RVAdapter extends ...{
List<?> itemList;
public void updateList (List<Object> items) {
if (items != null && items.size() > 0) {
itemList.clear();
itemList.addAll(items);
notifyDataSetChanged();
}
}
}
答案 1 :(得分:0)
您可以调用相同的设置回收器适配器代码。
别忘了打电话给adapter#notifyDataSetChanged()
答案 2 :(得分:0)
您可以在适配器中创建metod,更新数据并刷新您的recyclerview。
class RecyclerViewAdapter extends RecyclerView.Adapter<RecyclerViewAdapter.ViewHolder>{
List<Data> data;
...
public void update(ArrayList<Data> datas){
data.clear();
data.addAll(datas);
notifyDataSetChanged();
}
...
}
只需调用传递新数据的更新方法即可。就是这样。