博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
CoolViewPager:即刻刷新,自定义边缘效果颜色,双向自动循环,内置垂直切换效果,想要的都在这里...
阅读量:7067 次
发布时间:2019-06-28

本文共 1847 字,大约阅读时间需要 6 分钟。

这两天在GitHub上传了一个自定义ViewPager:,具有以下功能特征:

  1. 支持水平及垂直方向循环滚动
  2. 支持自动滚动
  3. 支持自动滚动方向、滚动时间、间隔时间的设置
  4. 支持调用notifyDataSetChanged实时刷新界面
  5. 支持边缘效果颜色的设置
  6. 为垂直滚动提供了适宜的界面切换效果

录屏GIF

为什么写这个库

我们平时使用support包中的ViewPager,当adapter中数据变更后,调用notifyDataSetChanged并不能刷新界面,需要重新调用ViewPager.setAdapter方法;网上所有的自定义ViewPager,几乎都没有提供垂直方向的切换效果;很多时候,我们需要变更ViewPager滑动到边缘的渐变色以配合App特定场景.CoolViewPager可以很方便的解决上述问题.

使用步骤

在你的build.gradle中添加依赖

dependencies {    implementation 'com.huanhailiuxin.view:coolviewpager:1.0.0'}

在你的布局文件中引入CoolViewPager

在Java代码中获取CoolViewPager,设置各种属性,为其设置Adapter

public class ActivityEdgeEffectColor extends BaseActivity {    private CoolViewPager vp;        ****    CoolViewPager vp = findViewById(R.id.vp);    vp.setScrollMode(CoolViewPager.ScrollMode.HORIZONTAL);    vp.setAdapter(adapter);    ****}

属性:

我们可以通过xml或Java代码的方式设置CoolViewPager实例的属性.

attribute name description
cvp_scrollmode 滚动方向
cvp_autoscroll 是否开启自动滚动
cvp_intervalinmillis 自动滚动时间间隔
cvp_autoscrolldirection 自动滚动方向
cvp_infiniteloop 是否循环滚动
cvp_scrollduration 自动滚动耗时
cvp_drawedgeeffect 是否绘制边缘效果
cvp_edgeeffectcolor 绘制的边缘效果颜色

通过XML布局文件

通过Java代码

public class ActivityEdgeEffectColor extends BaseActivity {    private CoolViewPager vp;        private void initViewPager(){        vp = findViewById(R.id.vp);        vp.setScrollMode(CoolViewPager.ScrollMode.VERTICAL);        vp.setAutoScroll(true,1000);        vp.setAutoScrollDirection(CoolViewPager.AutoScrollDirection.BACKWARD);        vp.setInfiniteLoop(true);        vp.setScrollDuration(true,600);        vp.setDrawEdgeEffect(true);        vp.setEdgeEffectColor(getResources().getColor(R.color.colorPrimary));    }}

转载地址:http://zwall.baihongyu.com/

你可能感兴趣的文章
oracle导入导出exp,imp
查看>>
oracle check if the display variable is set
查看>>
一键部署Openstack R版
查看>>
《JAVA——帮你解决高并发秒杀》
查看>>
国家级期刊发表要求注意事项
查看>>
C文件操作
查看>>
观察转小写的操作-字符函数
查看>>
Oracle查询访问同一表的两个以上索引(二)
查看>>
office 2016 下载地址
查看>>
Go语言之调试
查看>>
Go语言之 unsafe 包之内存布局
查看>>
Spring Cloud Config 入门
查看>>
rhce第二天笔记
查看>>
oneproxy中间件架构及注意事项
查看>>
phpweb解析不当加上传漏洞
查看>>
CentOS自动挂载NTFS分区的U盘或者移动硬盘
查看>>
2018-2019-1 20165226 20165310 20165315 实验二 固件程序设计
查看>>
安装windows后grub的恢复
查看>>
android学习总结(20120721)
查看>>
安装rrdtool时候的报错configure: error: Please fix the library issues listed above and try again....
查看>>