android 上线滚动循环view,Android 使用ViewPager自动滚动循环轮播效果.pdf

Android 使使用用ViewPager 自自动动滚滚动动循循环环轮轮播播效效果果

本文主要给大家介绍viewpager 自动播放,循环滚动的效果,对android viewpager滚动相关知识感兴趣的朋友可以

参考下本篇文章

对Android 利用ViewPager实现图 可以左右循环滑动效果,感兴趣的朋友可以直接点击查看内容详情。

主要介绍如何实现ViewPager 自动播放,循环滚动的效果及使用。顺便解决ViewPager嵌套(ViewPager inside ViewPag

er)影响触摸滑动及ViewPager滑动速度设置问题。

先给大家展示下效果图,喜欢的朋友可以下载源码 :

1、、实现

没有通过ScheduledExecutorService或Timer定期执行某个任务实现,而是简单的通过handler发送消息去完成一次滚

动,在完成一次滚动后发送另外一个delay的滚动消息,如此循环实现。自动滚动部分核心代码如下 :

Java

public void startAutoScroll() {

isAutoScroll = true;

sendScrollMessage(interval);

}

private void sendScrollMessage(long delayTimeInMills) {

/ remove messages before, keeps one message is running at most /

handler.removeMessages(SCROLL_WHAT);

handler.sendEmptyMessageDelayed(SCROLL_WHAT, delayTimeInMills);

}

private class MyHandler extends Handler {

@Override

public void handleMessage(Message msg) {

super.handleMessage(msg);

switch (msg.what) {

case SCROLL_WHAT:

scrollOnce();

sendScrollMessage(interval);

break;

}

}

}

至于ViewPager嵌套引起子ViewPager无法触摸问题是通过在子ViewPager的onTouchEvent 中添加

Java

getParent().requestDisallowInterceptTouchEvent(true);

禁止父控件对touch event做intercept解决的。

ViewPager滑动速度的设置是通过反射的方式重新设置ViewPager的Scroller,改变Scroller的startScroll的间隔时间完成

的。调用setScrollDurationFactor(dou le)即可。

2、、使使用用

(1) 引入公共

引入Android Auto Scroll ViewPager@Githu 作为你项目的li rary(如何拉取代码及添加公共 )。

(2) 调用

仅需简单两步 :

a. 布布局局定定义

Java

android:id="@+id/view_pager"

android:layout_width="match_parent"

android:layout_height="wrap_content" />

代替一般的ViewPager定义

. 启动ViewPager 自动滚动

startAutoScroll() 启动自动滚动

stopAutoScroll() 停止自动滚动

3、、设置置

setInterval(long) 设置自动滚动的间隔时间,单位为毫秒

setDirection(int) 设置自动滚动的方向,默认向右

setCycle( oolean) 是

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值