做了几个项目,一直有滚动播放的需求,也就是轮播。代码重复写时一定需要将其抽象,于是将轮播单独抽取出来,做成了一个库,可以直接引用。可以控制是否循环,是否轮播,轮播间隔时间,事件监听等操作,将它放在了github上。https://github.com/androiddevelop/CycleViewPager
做一下简单的介绍:
CycleViewPager
系统要求
android 4.0以上
快速使用
1. 导入CycleViewPager项目:该项目是一个库,在对应项目的java build path中添加该项目
2. 在layout中引入cn.androiddevelop.cycleviewpager.lib.CycleViewPager这个Fragment.
<fragment android:id="@+id/cycleViewPager"android:name="cn.androiddevelop.cycleviewpager.lib.CycleViewPager" android:layout_width="match_parent" android:layout_height="wrap_content" />
3. 在Activity(Fragment)中设置CycleViewPager的views以及滚动与轮播属性
CycleViewPager cycleViewPager = (CycleViewPager) getFragmentManager() .findFragmentById(R.id.cycleViewPager);// 设置循环,在调用setData方法前调用cycleViewPager.setCycle(true);// 在加载数据前设置是否循环cycleViewPager.setData(views);// 设置自动播放cycleViewPager.setWheel(true);
例子
项目中给出了6个例子,可以直接运行项目或者下载项目中得apk进行查看效果
1. NoCycleTextView
没有滚动的CycleTextView,与ViewPager相同
2. CycleTextView
可以滚动的CycleTextView
3. WheelCycleTextView
可以滚动与自动切换的CycleTextView
4. EventCycleTextView
监听CycleTextView滚动事件
5. FixedCycleTextView
固定高度的CycleTextView
6. NestedCycleTextView
CycleTextView嵌套在ViewPager中,实现拨动CycleTextView时外层ViewPager不滚动
api文档
javadoc