使用CustomLists数组显示recylerview数据

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了使用CustomLists数组显示recylerview数据相关的知识,希望对你有一定的参考价值。

我有点卡在下面。

我正在使用Retrofit和RxJava2,我设法通过使用List<List<CustomModel>>Observable.zip得到一个return Arrays.asList(list1, list2, list3);它现在看起来如下:

[list1的,list2中,项目list3]

我可以使用以下方式访问列表并打印每个项目:

                for (List<CustomModel> b : customModel) {
                    for (customModel c : b) {
                        Print INDIVIDUAL ITEMS
                        Log.d("id: ", c.getId());
                        Log.d("name: ", c.getName());
                        Log.d("symbol: ", c.getSymbol());
                        Log.d("rank: ", c.getRank());
                    }

但我无法使用以下方法将数据发送到我的自定义适配器:

   recyclerAdapter = new RecyclerAdapter(getApplicationContext(), b);
                    recyclerView.setAdapter(recyclerAdapter);
                    recyclerAdapter.notifyDataSetChanged();
                    swipeRefreshLayout.setRefreshing(false);

只给我一个阵列上的最新列表,但不是过去,因为它们在将数据传递给我的recyclerview时会被覆盖。

在recyclerView中显示所有3个列表的最佳方法是什么?

答案

假设CustomModel是你的模型类。 RecyclerAdapter是你的类扩展RecyclerView.Adapter<RecyclerAdapter.MyViewHolder>,其中RecyclerAdapter.MyViewHolderpackage RecyclerAdapter中的类,它扩展了RecyclerView.ViewHolder。

private List<CustomModel> modelList = new ArrayList<>();
private RecyclerView recyclerView;
private RecyclerAdapter mAdapter;


recyclerView = (RecyclerView) findViewById(R.id.recycler_view); 
mAdapter = new RecyclerAdapter(modelList);

RecyclerView.LayoutManager mLayoutManager = new LinearLayoutManager(getApplicationContext());
recyclerView.setLayoutManager(mLayoutManager);
recyclerView.setItemAnimator(new DefaultItemAnimator());

recyclerView.setAdapter(mAdapter);

每当有新数据出现时,请不要创建新的适配器并分配给recyclerview。只需添加到现有列表并通知适配器。将出现新项目。

for (List<CustomModel> customModels : customModelLists) {
    modelList.addAll(customModels);
}

mAdapter.notifyDataSetChanged();

我个人觉得这个链接很有用:https://www.androidhive.info/2016/01/android-working-with-recycler-view/

以上是关于使用CustomLists数组显示recylerview数据的主要内容,如果未能解决你的问题,请参考以下文章

角度,使用服务在数组中显示数组

使用 ReactJS 显示多维数组

使用数组项属性值在 UITableView/UICollectionView 中显示

如何使用 JSON 纬度数组和 JSON 经度数组在 Google 地图上显示折线?

如何使用带有对象数组的把手显示表格

代码使用向量成功运行,但使用数组显示错误