如何动态地将列表项添加到recyclerView?
Posted
技术标签:
【中文标题】如何动态地将列表项添加到recyclerView?【英文标题】:How to add list items to recyclerView dynamically? 【发布时间】:2021-08-22 19:07:56 【问题描述】:我使用 Retrofit 获取数据。我每页有 10 个结果。当我滚动到最后一个结果时,无法进一步查看 туче 结果。所以,我需要更新适配器。但没有任何结果。这是我的代码的一部分: 改造:
private final RestClient restClient;
private List<Data> newData;
private DataAdapter dataAdapter;
public void fetchData()
Call<Data> callItems = restClient.searchData();
callItems.enqueue(new Callback<Data>()
@Override
public void onResponse(@NonNull Call<Data> call, @NonNull Response<Data> response)
newData = response.body().getPersons();
personAdapter.addPersons(newData );
@Override
public void onFailure(@NonNull Call<Data> call, @NonNull Throwable t)
);
这是我在 adpter 类中添加新项目的方法:
private List<Person> persons = new ArrayList<>();
..................
public void addIPersons(List<Person> newPerson)
this.iersons= newIPeroon
persons.addAll(newIPerson;
notifyDataSetChanged();
【问题讨论】:
问题不是很清楚。你能详细说明一下吗? 【参考方案1】:你应该使用可变列表并且不应该覆盖它。 但更好的方法是使用 listadapter
【讨论】:
【参考方案2】:只需更新您的数据源并在您的RecyclerViewAdapter
上调用notifyDatasetChanged()
。
【讨论】:
【参考方案3】:像这样添加到您的列表后:
persons.add(newIPerson);
呼叫:
dataAdapter.notifyDatasetChanged();
【讨论】:
以上是关于如何动态地将列表项添加到recyclerView?的主要内容,如果未能解决你的问题,请参考以下文章
建立在RecyclerView基础上的含编辑框动态列表项增减异常
在键盘打开时将项目添加到 RecyclerView 时向下滚动
php WordPress类可以轻松地将自定义菜单项动态添加到菜单中。