轮播图适配器

133 阅读1分钟

public   class BannerAdapter extends PagerAdapter {


private Context context;
private List<BannerBean.ItemBean> list;
private TextView tvTitle;
private TextView tvNum;
private List<ImageView> points;


public BannerAdapter(Context context, List<BannerBean.ItemBean> list, TextView tvTitle, TextView tvNum, List<ImageView> points) {
this.context = context;
this.list = list;
this.tvTitle = tvTitle;
this.tvNum = tvNum;
this.points = points;
}


@Override
public int getCount() {
return Integer.MAX_VALUE;
}


@Override
public boolean isViewFromObject(@NonNull View view, @NonNull Object object) {
return view == object;
}


@NonNull
@Override
public Object instantiateItem(@NonNull ViewGroup container, int position) {
ImageView imageView = new ImageView(context);
imageView.setScaleType(ImageView.ScaleType.FIT_XY);
BannerBean.ItemBean itemBean = list.get(position % list.size());
tvTitle.setText(itemBean.getTitle());
tvNum.setText(position % list.size() + "/" + list.size());
changeColor(position % list.size());
ImageLoader.getInstance().displayImage(itemBean.getThumbnail(), imageView);


container.addView(imageView);
return imageView;
}


@Override
public void destroyItem(@NonNull ViewGroup container, int position, @NonNull Object object) {
container.removeView((View) object);
}


/**
* 改变圆点的颜色
*
* @param currentItem
*/
private void changeColor(int currentItem) {
for (int i = 0; i < list.size(); i++) {
if (i == currentItem) {
points.get(i).setImageResource(R.drawable.point_red);
} else {
points.get(i).setImageResource(R.drawable.point_gray);
}
}
}
}
---------------------
作者:币圈小韭菜
来源:CSDN
原文:blog.csdn.net/liu_qunfeng…
版权声明:本文为博主原创文章,转载请附上博文链接!