android 视频、图片混合轮播控件zbanner

 

android 视频、图片混合轮播控件zbanner

在youth5201314的图片轮播控件做的修改
原作者github地址:https://github.com/youth5201314/banner
原作者许久没有维护这个控件了,所以我在此控件基础上做了一些修改,新增视频图片混合轮播的形式,

参考文档 https://blog.csdn.net/lakebobo/article/details/90410092 

github传送门:https://github.com/ZkLeaf/ZBanner如果对你有用,star一个,非常感谢                                                                   demo地址:https://download.csdn.net/download/qq_35657482/11633772
控件优化空间有很多,暂时没有做系统的优化,只是实现了功能以及测了一些比较浅显的bug

添加依赖

dependencies{
    implementation 'com.github.ZkLeaf:ZBanner:1.0.2'  //最新版本
}
//简单使用
banner.setImages(App.images)//设置视频和图片地址集合
        .setImageLoader(new GlideImageLoader())
        .setOnBannerListener(this)
        .setVideoLoader(new IjkVideoLoader())
        .start();

 加载视频播放

public class IjkVideoLoader extends VideoLoader {

    @Override
    public void displayView(Context context, Object path, View view, OnVideoStateListener listener) {
        MyJzvdStd jzVideo = (MyJzvdStd)view;
        jzVideo.setUp((String) path, "");
        RequestOptions options = new RequestOptions()
                .centerCrop()
                .fitCenter()
                .diskCacheStrategy(DiskCacheStrategy.NONE);
        Glide.with(context).load("http://img.zcool.cn/community/01700557a7f42f0000018c1bd6eb23.jpg").apply(options).into(jzVideo.thumbImageView);

        jzVideo.setOnVideoStateListener(listener);

    }

    @Override
    public View createView(Context context) {
        MyJzvdStd view = new MyJzvdStd(context);
        return view;
    }
}

  加载图片,可以根据自身需求选择图片框架

public class GlideImageLoader extends ImageLoader {
    @Override
    public void displayView(Context context, Object path, ImageView view, OnVideoStateListener listener) {
        Glide.with(context)
                .load(path)
                .into(view);
    }

    @Override
    public ImageView createView(Context context) {
        return new RoundAngleImageView(context);
    }
}

 

你可能感兴趣的:(Android,广告轮播)