Home

Awesome

RecyclerView的LayoutManager,轻松实现各种炫酷、特殊效果,再也不怕产品经理为难!

博客详情: https://blog.csdn.net/u011387817/article/details/81875021

使用方式:

添加依赖:

implementation 'com.wuyr:pathlayoutmanager:1.0.3'

APIs:

MethodDescription
updatePath(Path path)更新Path
setItemOffset(int itemOffset)设置Item间距 (单位: px)
setOrientation(int orientation)设置滑动方向:<br>RecyclerView.HORIZONTAL (水平滑动)<br>RecyclerView.VERTICAL (垂直滑动)
setScrollMode(int mode)设置滚动模式:<br>SCROLL_MODE_NORMAL (普通模式)<br>SCROLL_MODE_OVERFLOW (允许溢出)<br>SCROLL_MODE_LOOP (无限循环)<br>
setItemDirectionFixed(boolean isFixed)设置Item是否保持垂直
setAutoSelect(boolean isAutoSelect)设置是否开启自动选中效果
setAutoSelectFraction(float position)设置自动选中的目标落点 (0~1)
setFlingEnable(boolean enable)设置惯性滚动是否开启
setCacheCount(int count)设置Item缓存个数
setItemScaleRatio(float... ratios)设置平滑缩放比例<br>ratios: 缩放比例, 数组长度必须是双数,<br>偶数索引表示要缩放的比例<br>奇数索引表示在路径上的位置 (0~1)<br>奇数索引必须要递增,即越往后的数值应越大<br>例如:<br> setItemScaleRatio(0.8, 0.5) <br>表示在路径的50%处把Item缩放到原来的80%<br>setItemScaleRatio(0, 0, 1, 0.5, 0, 1) <br>表示在起点处的Item比例是原来的0%,在路径的50%处会恢复原样<br>到路径终点处会缩小到0%
scrollToPosition(int position)将目标Item滚动到自动选中的落点(setAutoSelectFraction)<br>例如 setAutoSelectFraction(0) 则滚动到Path的起点处<br>若为1,则滚动到路径终点处,0.6则路径的60%处 (默认: 0.5)
smoothScrollToPosition(int position)同上,此方法为平滑滚动,即选中时会播放动画 <br>动画时长通过 setFixingAnimationDuration 方法来设置
setFixingAnimationDuration(long duration)设置自动选中后的选中动画时长
setOnItemSelectedListener(Listener listener)设置Item被选中后的监听器 (需开启自动选中才生效)

使用示例:

    mPathLayoutManager = new PathLayoutManager(path, itemOffset);
    mRecyclerView.setLayoutManager(mPathLayoutManager);

Demo下载: app-debug.apk

Demo源码地址: https://github.com/wuyr/PathLayoutManager

效果:

preview preview preview preview preview preview preview preview