android 视频、图片混合轮播控件zbanner
16lz
2021-01-23
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中常常使用shape来定义控件
- 关于解决为什么设置控件居中等位置无反应的问题
- Android计算图片占用内存
- Android动态布局,并动态为TextView控件设置drawableLeft、drawabl
- Android 保存图片到图库
- Android 开源框架Universal-Image-Loader完全解析(二)--- 图片缓存
- Android常用控件--TimePickerDialog(时间选择对话框)
- android设备唯一码的获取,cpu号,mac地址
- Android AdbCommandRejectedException和cannot bind to套接字地