Android 图片轮播

xiaoxiao2021-02-28  88

图片轮播是APP中比较基础,常见的控件,本次通过rollviewpager来实现简单的图片轮播

第一步:不必说,自然是先引入巨人的肩膀

compile 'com.jude:rollviewpager:1.4.6' 第二步:在布局当中定义好我们的轮播控件

<com.jude.rollviewpager.RollPagerView android:id="@+id/view_pager" android:layout_width="match_parent" android:layout_height="300dp" app:rollviewpager_play_delay="3000"/> 此处的属性可将大神的注释借用一下

app:rollviewpager_play_delay="3000" period,unit is ms。0 for no auto-play。default is 0. app:rollviewpager_hint_gravity="center" graviengty. left,center,right。default is center. app:rollviewpager_hint_color="#7c7c7c" color for indicator's container.default is black. app:rollviewpager_hint_alpha="80" alpha for indicator's container。0 for complete transparent,255 for no transparent。default is 0. app:rollviewpager_hint_paddingLeft="16dp" padding for indicator's container app:rollviewpager_hint_paddingRight="16dp" app:rollviewpager_hint_paddingTop="16dp" app:rollviewpager_hint_paddingBottom="16dp"

第三步:来看一下具体逻辑

首先找到你的控件,此处我用了ButterKnife

@BindView(R.id.view_pager) RollPagerView viewPager;然后呢,编写Adapter

此处我们看到,有一个StaticPagerAdapter可以用,看了一下大神的写法,继承自PagerAdapter,应该很习惯其中的方法了,果然。

我们直接写死一组图,在Adapter当中,然后通过getView()方法,将这组图放进每一个position当中,很简单

private class ImageNormalAdapter extends StaticPagerAdapter { int[] imgs = new int[]{ R.mipmap.img1, R.mipmap.img2, R.mipmap.img3, R.mipmap.img4, R.mipmap.img5, }; @Override public View getView(ViewGroup container, int position) { ImageView view = new ImageView(container.getContext()); view.setScaleType(ImageView.ScaleType.FIT_START); view.setLayoutParams(new ViewGroup.LayoutParams(ViewGroup.LayoutParams.MATCH_PARENT, ViewGroup.LayoutParams.MATCH_PARENT)); view.setImageResource(imgs[position]); return view; } @Override public int getCount() { return imgs.length; } } 那么这样子将你的Adapter设置给RollPager,搞定

转载请注明原文地址: https://www.6miu.com/read-44101.html

最新回复(0)