Banner轮播

Banner轮播

例:

 

依赖:

dependencies {

//    banner轮播依赖
    compile 'com.youth.banner:banner:1.4.9'
//    glide图片请求依赖
    compile 'com.github.bumptech.glide:glide:3.7.0'
}

 

权限:

    <!-- if you want to load images from the internet -->
    <uses-permission android:name="android.permission.INTERNET" />
    <!-- if you want to load images from a file OR from the internet -->
    <uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE" />

 

布局:

    <com.youth.banner.Banner
        xmlns:app="http://schemas.android.com/apk/res-auto"
        android:id="@+id/banner"
        android:layout_width="match_parent"
        android:layout_height="300dp" />

 

核心代码:

public class MainActivity extends AppCompatActivity {

    private List<String> imageArray;//设置图片加载集合
    private List<String> imageTitle;//设置图片标题集合
    private Banner mBanner;//轮播图片


    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);

        bannerxia();
    }


 




    /*************************
     * 轮播图
     * ***********************
     */
    private void bannerxia() {
        mBanner = (Banner) findViewById(R.id.banner);



        //设置图片加载集合
        imageArray=new ArrayList<>();
        imageArray.add("http://pic31.photophoto.cn/20140416/0005018332917044_b.jpg");
        imageArray.add("http://cdnq.duitang.com/uploads/item/201302/01/20130201192532_Nvu2C.jpeg");
        imageArray.add("http://a4.topitme.com/o033/100333352946a98355.jpg");
//        imageArray.add(bean.getData().getGoods().getGoods_img());
//        imageArray.add(bean.getData().getGoods().getGoods_img());
//        imageArray.add(bean.getData().getGoods().getGoods_img());


        
        /*********************
         * =====================
         * vvvvvvvvvvvvvvvvvvvvv
         * 替换、替换、替换、替换
         * vvvvvvvvvvvvvvvvvvvvv
         * =====================
         */
        //设置图片标题集合
        imageTitle=new ArrayList<>();
        imageTitle.add("aaaaaaaaa");
        imageTitle.add("bbbbbbbbb");
        imageTitle.add("ccccccccc");

        //设置banner样式
        mBanner.setBannerStyle(BannerConfig.CIRCLE_INDICATOR_TITLE_INSIDE);
        //设置图片加载器
        mBanner.setImageLoader(new GlideImageLoader());
        //设置图片集合
        mBanner.setImages(imageArray);
        //设置banner动画效果
        mBanner.setBannerAnimation(Transformer.RotateDown);
        //设置标题集合(当banner样式有显示title时)
        mBanner.setBannerTitles(imageTitle);
        //设置轮播时间
        mBanner.setDelayTime(1500);
        //设置指示器位置(当banner模式中有指示器时)
        mBanner.setIndicatorGravity(BannerConfig.CENTER);
        //banner设置方法全部调用完毕时最后调用
        mBanner.start();
        /*********************
         * =====================
         * ^^^^^^^^^^^^^^^^^^^^^
         * 替换、替换、替换、替换
         * ^^^^^^^^^^^^^^^^^^^^^
         * =====================
         */
        
        

        /*************************
         * 替换上面的代码可去标题
         * **********************
         */
//        //设置图片加载器
//        mBanner.setImageLoader(new GlideImageLoader());
//        //设置图片集合
//        mBanner.setImages(imageArray);
//        //banner设置方法全部调用完毕时最后调用
//        mBanner.start();
    }



    //如果你需要考虑更好的体验,可以这么操作
    @Override
    protected void onStart() {
        super.onStart();
        //开始轮播
        mBanner.startAutoPlay();
    }
    @Override
    protected void onStop() {
        super.onStop();
        //结束轮播
        mBanner.stopAutoPlay();
    }



    private class GlideImageLoader extends ImageLoader {
        @Override
        public void displayImage(Context context, Object path, ImageView imageView) {
            //Glide 加载图片简单用法
            Glide.with(context).load((String) path).into(imageView);
        }
    }
}

 

 

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值