学而实习之 不亦乐乎

Android:实现图片轮播

2022-06-15 21:13:03

一、添加依赖

implementation 'com.jude:rollviewpager:1.2.9'

二、布局文件 activity_main.xml

<com.jude.rollviewpager.RollPagerView
    android:id="@+id/roll_view_pager"
    android:layout_width="match_parent"
    android:layout_height="180dp"
    app:rollviewpager_play_delay="3000" />

三、适配器类 ImageLoopAdapter

public class ImageLoopAdapter extends LoopPagerAdapter {

    String[] imgs = new String[0];
    private Context mContext;

    public ImageLoopAdapter(Context mContext, RollPagerView viewPager,String[] imgs) {
        super(viewPager);
        this.mContext = mContext;
        this.imgs = imgs;
    }

    @Override
    public View getView(ViewGroup container, int position) {
        ImageView view = new ImageView(container.getContext());
        view.setScaleType(ImageView.ScaleType.FIT_CENTER);
        view.setLayoutParams(new ViewGroup.LayoutParams(ViewGroup.LayoutParams.MATCH_PARENT,
                ViewGroup.LayoutParams.MATCH_PARENT));
        Glide.with(mContext).load(imgs[position]).into(view);

        return view;
    }

    @Override
    public int getRealCount() {
        return imgs.length;
    }
}

四、主界面实现图片轮播

//广告轮播
String[] URLS = {
	   "http://www.xxx.yyy/ad/1.jpg",
	   "http://www.xxx.yyy/ad/2.jpg",
	   "http://www.xxx.yyy/ad/3.jpg",
};

mViewPager = findViewById(R.id.mViewPager);
mViewPager.setAdapter(new ImageLoopAdapter(getActivity(), mViewPager,URLS));