RollingLayout(仿[淘宝头条])
这是一个可以让自己子视图滚动起来的控件,支持子条目自定义、滚动方向、滚动速度、停留时间等属性。
该项目已上传至Github中,欢迎Star/Fork,项目传送门。
一、Demo演示
提供四种不同的滚动模式。
demo.gif
二、特性
- [x] 提供四种不同的滚动模式.
- [x] 可以直接当做FrameLayout来使用.
- [x] 提供适配器模式支持.
- [x] 提供滚动变化时候的监听器.
- [x] 提供子视图的点击监听器.
- [x] 可配置滚动动画时长.
- [x] 可配置停留时长.
三、集成
3.1 最新版本
名称 | RollingLayout |
---|---|
最新版 |
3.2 配置
3.2.1 Maven方式集成
<dependency>
<groupId>com.justkiddingbaby</groupId>
<artifactId>rollinglayout</artifactId>
<version>最新版</version>
<type>pom</type>
</dependency>
3.2.2 JCenter方式集成
第一步. 在项目的build.gradle中添加.
repositories {
jcenter()
}
然后. 在module的build.gradle中添加.
compile 'com.justkiddingbaby:rollinglayout:最新版'
四、说明
4.1属性说明
属性 | 说明 | 取值 |
---|---|---|
rolling_eachTime | 滚动动画时长 | integer |
rolling_pause | 停留时长 | integer |
rolling_orientation | 滚动模式 | upDown downUp leftRight rightLeft |
4.2方法说明
返回值 | 方法名 | 说明 |
---|---|---|
void | setRollingEachTime(int time) | 设置动画时长 |
void | setRollingPauseTime(int time) | 设置停留时长 |
void | setRollingOrientation(int orientation) | 设置滚动模式 |
void | setAdapter(BaseAdapter orientation) | 设置适配器 |
void | startRolling() | 开始滚动 |
void | stopRolling() | 停止滚动 |
void | addOnRollingChangedListener(OnRollingChangedListener listener) | 添加滚动时候的监听器 |
void | addOnRollingChangedListener(OnRollingChangedListener listener) | 添加子视图的点击监听器 |
五、使用
在布局中使用
<com.jkb.rollinglayout.RollingLayout
android:id="@+id/rollingleftRight"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_margin="10dp"
android:layout_weight="1"
rolling:rolling_eachTime="500"
rolling:rolling_orientation="leftRight"
rolling:rolling_pause="1000"/>
六、发布历史
v1.0.1(2017/7/28)
1、修改父类为ViewFlipper,原本为ViewGroup.
2、添加监听器.
v0.1(2017/7/24)
1、发布版本0.1.
许可
RollingLayout遵循MIT开源许可协议.查看更多信息请点击LICENSE.