gpt4 book ai didi

android - 在 RecyclerView 上插入新项目

转载 作者:行者123 更新时间:2023-11-30 00:45:16 25 4
gpt4 key购买 nike

我有一个 REST 服务可以对我的请求进行分页...我需要在我的 recyclerview 上插入 20 个元素并在加载之前保留这 20 个元素。

这是我的请求...

VeiculoRequestHelper.veiculosPaginatedRequest(Request.Method.GET, url, null, new Response.Listener<VeiculoPaginated>() {
@Override
public void onResponse(VeiculoPaginated response) {
AnalyticsTracker.getInstance().sendEvent(AnalyticsEnum.Category.MY_VEHICLE, AnalyticsEnum.Action.CLICK, AnalyticsEnum.Label.SUCCESS);

isLast = response.isLast();

ArrayList<Veiculo> veiculoArrayList = new ArrayList<>();
veiculoArrayList.addAll(response.getContent());

veiculos = veiculoArrayList;

mAdapter.addItem(veiculos);

mRecyclerView.setAdapter(mAdapter);

}
}, new Response.ErrorListener() {
@Override
public void onErrorResponse(VolleyError error) {
AnalyticsTracker.getInstance().sendEvent(AnalyticsEnum.Category.MY_VEHICLE, AnalyticsEnum.Action.CLICK, AnalyticsEnum.Label.ERROR);

Toast.makeText(getActivity(), "Erro ao realizar listagem de veículos.", Toast.LENGTH_LONG).show();
}
});

这是我添加新项目的适配器方法...

    public void addItem(ArrayList<Veiculo> veiculosArray) {
if (veiculos != null) {
veiculos.clear();
veiculos.addAll(veiculosArray);
notifyItemInserted(veiculos.size() - 1);
} else {
veiculos = veiculosArray;
}
notifyDataSetChanged();
}

我做错了什么?插入了 itens 但没有保留旧的 itens...请帮忙!

最佳答案

旧数据将在addItem(ArrayList<Veiculo> veiculosArray)中被清除:

if (veiculos != null) {
veiculos.clear(); // here they will be cleared
veiculos.addAll(veiculosArray);
notifyItemInserted(veiculos.size() - 1);
}

删除此行以保留旧项目。

关于android - 在 RecyclerView 上插入新项目,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41894625/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com