private class MyViewPagerAdapter extends PagerAdapter {
@Override
public int getCount() {
return Integer.MAX_VALUE;
}
@Override
public boolean isViewFromObject(@NonNull View view, @NonNull Object o) {
return view == o;
}
@Override
public void destroyItem(@NonNull ViewGroup container, int position, @NonNull Object object) {
container.removeView((View) object);
}
@NonNull
@Override
public Object instantiateItem(@NonNull ViewGroup container, int position) {
//当前位置模上总数等于图片在数组中的位置
position %= images.size();
if (position < 0) {
position = images.size() + position;
}
View view = LayoutInflater.from(getContext()).inflate(R.layout.cardview_pager, container, false);
ImageView iv_banner = view.findViewById(R.id.iv_banner);
Glide.with(getContext())
.load(images.get(position))
.into(iv_banner);
container.addView(view);
return view;
}
}
下面是ViewPager 设置Banner时候设置右侧多三分之一个的方法
<android.support.v4.view.ViewPager
android:id="@+id/id_viewpager"
android:layout_width="match_parent"
android:layout_height="125dp"
android:layout_gravity="center"
android:layout_marginBottom="2dp"
android:clipToPadding="false"
android:paddingRight="80dp">