实现在类似陌陌的界面中使用RecyclerView流畅地展示并滑动浏览图片
最编程
2024-02-17 14:24:17
...
利用RecyclerView实现仿陌陌滑动浏览图片,效果如下
图片效果真是太差了..主要是看这个效果..没有什么好的gif制作软件。
下面是正题。
我们利用自定义LayoutManager来实现这种类似卡片重叠的效果。以下是SwipeViewLayoutManager中的核心代码。关键地方都有注释。
onLayoutChildren()方法负责摆放item,通过计算item的排列顺序,按顺序缩小item大小,并按递归顺序依次往下移,实现层层叠叠的效果。
/** * Created by liujiayu on 2017/6/29. */ public class SwipeViewLayoutManager extends LayoutManager { /* * 在linearlayoutManager中generateDefaultLayoutParams()方法默认返回WRAP_CONTENT * 在这里我们也返回WRAP_CONTENT * */ @Override public RecyclerView.LayoutParams generateDefaultLayoutParams() { return new RecyclerView.LayoutParams(ViewGroup.LayoutParams.WRAP_CONTENT, ViewGroup.LayoutParams.WRAP_CONTENT); } /* onLayoutChildren()方法