android 滑动自动播放,GitHub - androiddevelop/CycleViewPager: 循环滚动,自动播放的ViewPager...

CycleViewPager

支持自动轮播和循环滚动的ViewPager

68747470733a2f2f6d6176656e2d6261646765732e6865726f6b756170702e636f6d2f6d6176656e2d63656e7472616c2f6d652e636f6465626f792e616e64726f69642f6379636c652d766965772d70616765722f62616467652e737667

系统要求

快速使用

1. 导入CycleViewPager项目

compile 'me.codeboy.android:cycle-view-pager:2.0.0'

2. 在layout中引入me.codeboy.android.cycleviewpager.CycleViewPager这个View

android:id="@+id/cycleViewPager"

android:layout_width="match_parent"

android:layout_height="match_parent"/>

3. views创建

// 需要循环的创建方式

List views = new ArrayList();

views.add(ViewFactory.create("最后一个view"));

for (int i = 0; i < 4; i++) {

views.add(ViewFactory.create("第i个view");

}

views.add(ViewFactory.create("第一个view"));

// 不需要循环的创建方式

List views = new ArrayList();

for (int i = 0; i < 4; i++) {

views.add(ViewFactory.create("第i个view");

}

4. 设置CycleViewPager的views以及滚动与轮播属性

CycleViewPager cycleViewPager = (CycleViewPager)mContext.findFragmentById(R.id.cycleViewPager);

//以下setData参数含义:

//1: 试图 2: 循环(默认true) 3: 轮播(默认false) 4: 轮播时间(默认5000ms)

//循环+轮播,3000ms自动切换

cycleViewPager.setData(views, true, true, 3000);

//只循环,不轮播

cycleViewPager.setData(views, true, false);

cycleViewPager.setData(views, true);

cycleViewPager.setData(views);

//与viewPager相同

cycleViewPager.setData(views, false);

setData请放在最后一步设置。

例子

项目中给出了6个例子,可以直接运行项目或者下载项目中得apk进行查看效果

1. NoCycleTextView

没有滚动的CycleTextView,与ViewPager相同

2. CycleTextView

可以滚动的CycleTextView

3. WheelCycleTextView

可以滚动与自动切换的CycleTextView

4. EventCycleTextView

监听CycleTextView滚动事件和view的点击事件

5. IndicatorCustom1CycleTextView

指示器的颜色、形状、位置的简单变化

6. IndicatorCustom2CycleTextView

自定义的指示器

7. NestedCycleTextView

CycleTextView嵌套在ViewPager中,实现滚动CycleTextView时外层ViewPager不滚动

javadoc文档

注意事项

外层有viewPager时,需要继承me.codeboy.android.cycleviewpager.BaseViewPager。

设置自动播放时,CycleViewPager自动为可循环滚动.滚动是轮播的基础。

自定义指示器时,获取的指示器容器的margin和padding都是0,需要自行根据需要设置。

控件的点击事件请自行设置,多增加的第一个和最后一个控件由于动画时间也请设置事件。CycleViewPager仅提供循环和轮播的机制。

使用中可以忽略添加的两个控件,listener中返回的position为处理后的位置。如果有4个view,名字为view0、view1、view2、view3,设置循环时,传入的views为view3'、view0、view1、view2、view3、view1',返回的position将介于[0,3]之间。

License

Copyright 2016 Yuedong.li

Licensed under the Apache License, Version 2.0 (the "License");

you may not use this file except in compliance with the License.

You may obtain a copy of the License at

http://www.apache.org/licenses/LICENSE-2.0

Unless required by applicable law or agreed to in writing, software

distributed under the License is distributed on an "AS IS" BASIS,

WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.

See the License for the specific language governing permissions and

limitations under the License.

有任何问题,欢迎发送邮件到app@codeboy.me交流.

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值