用于制作Google Play风格横向滚动的控件

时间:2015-12-22 06:13:48

标签: android android-layout android-fragments android-scrollview android-controls

我正在尝试制作一个水平滚动列表,就像我们在Google Play应用中找到的那样。我已经制作了片段(100dp x 150dp)和适配器,但我很难找到一个可以工作的元素。

片段如下所示:

enter image description here

它只是一个带有图像视图的卡片视图,以及几个文本视图。

我的目标是将它们中的许多组合在一起,横向和可滚动,如下所示:

enter image description here

我尝试使用ViewPager,但这只允许一个全屏元素,但我需要一个继续在页面外的列表。另一方面,Horizo​​ntalScrollView不会“捕捉”到元素,如上面的gif所示。

关于哪个元素最适合这个问题的任何建议?

3 个答案:

答案 0 :(得分:4)

我建议使用RecyclerView“模式”,只需使用LinearLayoutManager并将orientation设置为HORIZONTAL

答案 1 :(得分:1)

如果我是你,我会使用ViewPage并实现一个PagerAdapter。在自定义PagerAdapter中,覆盖方法{{1}},将页面宽度调整为卡片的宽度。

答案 2 :(得分:0)

它将与Horizo​​ntal RecyclerView一起使用,使Horizo​​ntal LinearLayoutManager如下面的代码

RecyclerView rclViewOrder;
rclViewOrder.setHasFixedSize(true);
RecyclerView.LayoutManager mLayoutManager = new LinearLayoutManager(this, LinearLayoutManager.HORIZONTAL, false);

rclViewOrder.setLayoutManager(mLayoutManager);
RecyclerView.Adapter mAdapter = new ViewOrderWaiterAdapter(activity, orderItemInfoList);
rclViewOrder.setAdapter(mAdapter);