457_自动滚动的ViewPager
2017-01-05 21:47
316 查看
自动滚动的ViewPager
public class AutoRollingViewPager extends ViewPager {
public AutoRollingViewPager(Context context) {
this(context, null);
}
public AutoRollingViewPager(Context context, AttributeSet attrs) {
super(context, attrs);
}
private Handler handler = new Handler() {
@Override
public void handleMessage(Message msg) {
super.handleMessage(msg);
int currentItem = AutoRollingViewPager.this.getCurrentItem();
if (currentItem == AutoRollingViewPager.this.getAdapter().getCount() - 1) {
AutoRollingViewPager.this.setCurrentItem(0);
} else {
AutoRollingViewPager.this.setCurrentItem(currentItem + 1);
}
this.sendEmptyMessageDelayed(0, 1000);
}
};
@Override
public boolean onTouchEvent(MotionEvent ev) {
switch (ev.getAction()) {
case MotionEvent.ACTION_DOWN:
handler.removeCallbacksAndMessages(null);
break;
case MotionEvent.ACTION_UP:
handler.removeCallbacksAndMessages(null);
handler.sendEmptyMessageDelayed(0, 1000);
break;
}
return super.onTouchEvent(ev);
}
}
public class AutoRollingViewPager extends ViewPager {
public AutoRollingViewPager(Context context) {
this(context, null);
}
public AutoRollingViewPager(Context context, AttributeSet attrs) {
super(context, attrs);
}
private Handler handler = new Handler() {
@Override
public void handleMessage(Message msg) {
super.handleMessage(msg);
int currentItem = AutoRollingViewPager.this.getCurrentItem();
if (currentItem == AutoRollingViewPager.this.getAdapter().getCount() - 1) {
AutoRollingViewPager.this.setCurrentItem(0);
} else {
AutoRollingViewPager.this.setCurrentItem(currentItem + 1);
}
this.sendEmptyMessageDelayed(0, 1000);
}
};
@Override
public boolean onTouchEvent(MotionEvent ev) {
switch (ev.getAction()) {
case MotionEvent.ACTION_DOWN:
handler.removeCallbacksAndMessages(null);
break;
case MotionEvent.ACTION_UP:
handler.removeCallbacksAndMessages(null);
handler.sendEmptyMessageDelayed(0, 1000);
break;
}
return super.onTouchEvent(ev);
}
}
相关文章推荐
- ScrollView+ViewPager(上下滚动+自动切换图片)
- ViewPager实现可以自动滚动的广告展示
- Android ViewPager巧用偷梁换柱实现自动循环滚动
- ScrollView嵌套ListView,GridView,ViewPager,以及这些控件自动滚动到底部问题的解决
- ScrollView嵌套ListView,GridView,ViewPager,以及这些控件自动滚动到底部问题的解决
- Android开发--ViewPager自动循环滚动,手动换页
- ViewPager添加圆点indicator,及ViewPager的循环滚动、自动滚动
- Android自动滚动 轮播循环的ViewPager
- 自动滚动的ViewPager
- Android自动滚动 轮播循环的ViewPager
- Android自动滚动 轮播循环的ViewPager
- Android自动滚动 轮播循环的ViewPager
- viewpager循环滚动和自动轮播的问题
- Android自动滚动 轮播循环的ViewPager
- 关于自动滚动无限循环viewpager的问题
- ScrollView嵌套ListView,GridView,ViewPager,以及这些控件自动滚动到底部问题的解决
- viewpager循环滚动和自动轮播的问题
- android中ViewPager的用法以及自动滚动播放实现初探
- ScrollView嵌套ListView,GridView,ViewPager,以及这些控件自动滚动到底部问题的解决
- android viewpager实现无限循环自动滚动