四十七 Android项目实战:轮播图效果Viewpager( 二 )

< lyDot.getChildCount(); i++) {if (i == currentPosition) {lyDot.getChildAt(i).setBackgroundColor(Color.parseColor("#1d2939"));} else {lyDot.getChildAt(i).setBackgroundColor(Color.parseColor("#476990"));}}}@Overridepublic void onPageScrollStateChanged(int state) {// 没有滑动的时候 切换页面}});}
4、()方法
private void initHandler() {handler = new Handler() {@Overridepublic void handleMessage(Message msg) {super.handleMessage(msg);if (msg.what == 1) {if (currentPosition==viewPagerData.size()-1){// 如果当前位置是轮播图的最后一个位置 , 则调到轮播图数据源的第一张图片currentPosition = 0 ;viewpager.setCurrentItem(0,false);}else{currentPosition ++;// 否则切换到下一张图片viewpager.setCurrentItem(currentPosition,true);}}}};}
5、()方法
/*** 开启子线程 , 实现3000毫秒 切换一次  , viewpager自动播放*/private void autoViewPager() {new Thread() {@Overridepublic void run() {super.run();while (actIsAlive) {try {sleep(3000);handler.sendEmptyMessage(1);} catch (InterruptedException e) {e.printStackTrace();}}}}.start();}
-----------------------------------------------------------------------------------------------------------
【四十七Android项目实战:轮播图效果Viewpager】 Demo 地址