Android 图片轮播

图片轮播是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,搞定
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值