设为首页 加入收藏

TOP

ViewPager+handler实现轮播(二)
2017-10-12 11:29:09 】 浏览:4452
Tags:ViewPager handler 实现
wPager;
import android.support.v4.view.ViewPager.OnPageChangeListener; import android.util.Log; import android.view.MotionEvent; import android.view.View; import android.view.View.OnTouchListener; import android.view.ViewTreeObserver.OnGlobalLayoutListener; import android.view.ViewGroup; import android.widget.ImageView; import android.widget.ImageView.ScaleType; import android.widget.LinearLayout; import android.widget.ProgressBar; import android.widget.RelativeLayout; public class Activity_Other extends Activity { private ViewPager viewPager; private ImageLoader loader; private DisplayImageOptions options; // private // private static final int[] mImageIds = new int[] { R.drawable.guide_1, // R.drawable.guide_2, R.drawable.guide_3 }; // 网上的图片资源 public static final String[] IMAGES = new String[] { "https://www.cppentry.com/upload_files/article/98/1_eqbhn__.jpg", "https://www.cppentry.com/upload_files/article/98/1_lmfv7__.jpg", "https://www.cppentry.com/upload_files/article/98/1_b4m2s__.jpg", "https://www.cppentry.com/upload_files/article/98/1_p51yn__.jpg", "https://www.cppentry.com/upload_files/article/98/1_r4okc__.jpg", "https://www.cppentry.com/upload_files/article/98/1_czau2__.jpg" }; // private ArrayList<ImageView> mImageViewList; private LinearLayout llPointGroup;// 引导圆点的父控件 private int mPointWidth;// 圆点间的距离 private View viewRedPoint;// 小红点 // private Handler mhandler; private Handler mhandler = new Handler() { public void handleMessage(Message msg) { int currentItem = viewPager.getCurrentItem(); if (currentItem < IMAGES.length - 1) { currentItem++; } else { currentItem = 0; } viewPager.setCurrentItem(currentItem);// 切换到下个页面 mhandler.sendEmptyMessageDelayed(0, 3000);//继续延迟3秒发送消息让Handler继续执行 形成循环 }; }; @Override protected void onCreate(Bundle savedInstanceState) { // TODO Auto-generated method stub super.onCreate(savedInstanceState); setContentView(R.layout.activity_other); loader = ImageLoader.getInstance(); options = new DisplayImageOptions.Builder() .showImageForEmptyUri(R.drawable.ic_empty) .showImageOnFail(R.drawable.ic_error) .resetViewBeforeLoading(true).cacheOnDisc(false) .cacheInMemory(true).imageScaleType(ImageScaleType.EXACTLY) .bitmapConfig(Bitmap.Config.RGB_565) .displayer(new FadeInBitmapDisplayer(300)).build(); viewPager = (ViewPager) findViewById(R.id.viewpager1); llPointGroup = (LinearLayout) findViewById(R.id.ll_point_group); viewRedPoint = findViewById(R.id.view_red_point); initViews(); viewPager.setAdapter(new GuideAdapter()); viewPager.setOnPageChangeListener(new GuidePageListener()); mhandler.sendEmptyMessageDelayed(0, 3000);// 延时3秒后发送消息让handler来实现轮播 } private void initViews() { // TODO Auto-generated method stub // mImageViewList = new ArrayList<ImageView>(); // // // // 初始化引导页的3个页面 // for (int i = 0; i < mImageIds.length; i++) { // ImageView image = new ImageView(this); // image.setBackgroundResource(mImageIds[i]);// 设置引导页背景 // mImageViewList.add(image); // } for (int i = 0; i < IMAGES.length; i++) { View point = ne
首页 上一页 1 2 3 4 5 下一页 尾页 2/5/5
】【打印繁体】【投稿】【收藏】 【推荐】【举报】【评论】 【关闭】 【返回顶部
上一篇圆形ImageView(可设置边缘厚度和.. 下一篇仿微信底部TAG完美渐变

最新文章

热门文章

Hot 文章

Python

C 语言

C++基础

大数据基础

linux编程基础

C/C++面试题目