如何在单个RecyclerView中实施RecyclerViews?

时间:2017-12-01 20:36:59

标签: android layout

我想创建一个与Google Play商店或Netflix应用程序类似的布局,其中在单个RecyclerView中基本上有多个水平RecyclerViews。如果这不是他们的方式,他们如何实现这种效果?

enter image description here

现在我已经成功实现了一个自定义适配器,可以完成单个水平的RecyclerView。但是,我无法弄清楚如何将这些单个水平RecyclerViews放入RecyclerView以制作水平RecyclerViews列表。我已经尝试过另一个适配器来完成这项工作,但我无法让它工作。

所以我的问题就是如何使用我描述的RecyclerView方法或其他方法制作类似于Netflix或Google Play商店的版面。

编辑: 我想在RecyclerView中进行RecyclerView的原因之一是我只需要实例化一次。要使用RecyclerView,您必须实例化几件事。

List<Video> videoList = new ArrayList<>();
VideoAdapter videoAdapter = new VideoAdapter(videoList, this);
RecyclerView recyclerView = (RecyclerView) findViewById(R.id.video_list);
recyclerView.setLayoutManager(new LinearLayoutManager(this));
recyclerView.setAdapter(videoAdapter);

所以我要避免的一件事是必须为不同的列表做8次。

1 个答案:

答案 0 :(得分:0)

带有视图寻呼机的回收站视图可以解决这个问题。您将必须以下列方式覆盖getPageWidth以在一个视图寻呼机中显示多个页面。此外,如果您不想自己完成这项工作,这个lib也很有用。 lib

@Override
public float getPageWidth(int position) {
float numberOfPages = 2; // You could display partial pages using a float value
return (1 / numberOfPages);
}