1.用ViewPager布局
2.把要放到引导页面的图放入数组中 int [] arryimager ={R.drawble.id}
int [] arryimage={R.drawable.guide_1,R.drawable.guide_2,R.drawable.guide_3}; //2.实例化一个ImageView集合 imageViews =new ArrayList<>(); //3.便历数组 for (int x=0;x<arryimage.length;x++){ //4.实例化ImageView ImageView imageView =new ImageView(this); //5.设置imagevie背景图路径并传入编历的数组 imageView.setBackgroundResource(arryimage[x]); //6.把实例化的imageview传入集合中 imageViews.add(imageView); //设置viewpager的pageradapter并传入实例化的MyPagerAdapter viewpager_guide.setAdapter(new MyPagerAdapter());
pagerAdapter要重写的四个方法
1.getCount() 获取图片/页面的数量
@Override public int getCount() { return basePagers.size(); }
2用这二个叁数对比.判断显示的是否同一页面/图片
@Override public boolean isViewFromObject(View view, Object object) { return view==object; }
3.pagerAdapter只绶存三张图页面,如何超出就用此方法.
@Override public void destroyItem(ViewGroup container, int position, Object object) { container.removeView((View) object); }
注:下面不去掉会挂掉
super.destroyItem(container, position, object);
4.当要显示的图片可以进行缓存的时候,会调用这个方法进行显示图片的初始化,我们将要显示的ImageView加入到ViewGroup中,然后作为返回值返回即可
@Override public Object instantiateItem(ViewGroup container, int position) { BasePager basePager= basePagers.get(position); View view =basePager.rootview; basePager.initData(); container.addView(view); return view; }