RecyclerView + SnapHelper实现炫酷ViewPager效果

简介: 目录什么是SnapHelperSnapHelper是Google 在 Android 24.2.0 的support 包中添加的对RecyclerView的拓展,结合RecyclerView使用,能很方便的做出一些炫酷的效果。

目录

img_d6f3db79959842c089779b4c34eec5eb.png

什么是SnapHelper

SnapHelper是Google 在 Android 24.2.0 的support 包中添加的对RecyclerView的拓展,结合RecyclerView使用,能很方便的做出一些炫酷的效果。

SnapHelper的使用方法

SnapHelper是一个抽象类 Google 内置了两个默认实现类,LinearSnapHelper和PagerSnapHelper。

  • LinearSnapHelper:使当前Item居中显示,常用场景是横向的RecyclerView, 类似ViewPager效果,但是又可以快速滑动多个条目。
LinearLayoutManager manager = new LinearLayoutManager(getContext());
manager.setOrientation(LinearLayoutManager.VERTICAL);
mRecyclerView.setLayoutManager(manager);
LinearSnapHelper snapHelper = new LinearSnapHelper();
snapHelper.attachToRecyclerView(mRecyclerView);
  • PagerSnapHelper:使RecyclerView 像ViewPager一样的效果,每次只能滑动一页。
LinearLayoutManager linearLayoutManager = new LinearLayoutManager(this);
linearLayoutManager.setOrientation(LinearLayoutManager.HORIZONTAL);
mRecycleview.setLayoutManager(linearLayoutManager);
PagerSnapHelper snapHelper = new PagerSnapHelper();
snapHelper.attachToRecyclerView(mRecycleview);

这里我只使用了PagerSnapHelper做了一个案例:

img_0082754f4cee12fd2790e62bfb8424be.gif

项目源码: https://github.com/myml666/SnapHelperDemo

个人技术博客:https://myml666.github.io

目录
相关文章
|
Android开发
Android 使用ViewPager和自定义PagerAdapter实现轮播图效果
Android 使用ViewPager和自定义PagerAdapter实现轮播图效果
120 0
|
安全
Fragment里面有ViewPager,ViewPager里面又嵌套Fragment,刚遇到的一个坑
Fragment里面有ViewPager,ViewPager里面又嵌套Fragment,刚遇到的一个坑
|
Android开发 API 开发工具
18.SnapHelper源码分析-RecyclerView实现ViewPager效果
1.简介 SnapHelper是Android 24.2.0 的support 包中添加的一个类,用于辅助RecyclerView扩展滑动效果。比如,通过这个类可以实现RecyclerView像ViewPager一样的滑动,甚至在此基础上再次扩展。
1593 0
RecyclerView实现ViewPager效果
RecyclerView实现ViewPager效果,以及横向的ListView效果。效果图如下;   Github: https://github.com/hpu-spring87/recyclerviewpager
702 0
|
Java Android开发 容器
TableLayout和Viewpager实现切换
因为我是在之前的基础上写的,所以这个TableLayout和Viewpager实际上是写在Fragment上的。要写到Activity里其实也是一样的啦。 先看效果图,原谅我不会动态图,只能截个图啦 布局文件 app:tabIndicatorcolor意思是选中的导航条的颜色。 app:tabSelectesTextColor是选中的导航条的文字
2200 0
|
Android开发 Java 缓存
AndroidSweetSheet:ViewPager的实现(2)
 AndroidSweetSheet:ViewPager的实现(2) 附录文章9说明了AndroidSweetSheet典型的列表样式实现,本文写一个例子,说明AndroidSweetSheet以翻页的ViewPager样式实现。
821 0