Android 最新左右可见上下页的banner实现demo
运行效果,可见上下页样式
demo链接:https://download.csdn.net/download/meixi_android/11045703
实现方法
首先添加必要依赖
implementation ('com.android.support:recyclerview-v7:27.0.2'){force = true
}
implementation ('com.android.support:cardview-v7:27.0.2'){force = true
}
implementation 'com.github.bumptech.glide:glide:3.6.1'
3、activity代码
public class MainActivity extends AppCompatActivity {@Overrideprotected void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);setContentView(R.layout.activity_main);BannerLayout recyclerBanner = findViewById(R.id.recycler);List<String> list = new ArrayList<>();list.add("http://ww1.sinaimg.cn/large/b7cd25cagw1f55lgujsvuj20qo0z1n2o.jpg");list.add("http://b-ssl.duitang.com/uploads/item/201802/13/20180213092931_vlmdh.jpg");list.add("http://p2.qhimgs4.com/t010eb5908d6f28cf14.jpg");list.add("http://b-ssl.duitang.com/uploads/item/201802/13/20180213124050_gkhxt.jpg");list.add("http://dingyue.nosdn.127.net/3tqSsnfhfRRea6kZVlS0reiWcPFx9SR1jJ=cHkyEJLREO1530066845542compressflag.jpg");list.add("http://b-ssl.duitang.com/uploads/item/201802/13/20180213123947_cdkha.jpg");WebBannerAdapter webBannerAdapter=new WebBannerAdapter(this,list);webBannerAdapter.setOnBannerItemClickListener(new BannerLayout.OnBannerItemClickListener() {@Overridepublic void onItemClick(int position) {Toast.makeText(MainActivity.this, "点击了第 " + position+" 项", Toast.LENGTH_SHORT).show();}});recyclerBanner.setAdapter(webBannerAdapter);}
}
adapter类
public class WebBannerAdapter extends RecyclerView.Adapter<WebBannerAdapter.MzViewHolder> {private Context context;private List<String> urlList;private BannerLayout.OnBannerItemClickListener onBannerItemClickListener;public WebBannerAdapter(Context context, List<String> urlList) {this.context = context;this.urlList = urlList;}public void setOnBannerItemClickListener(BannerLayout.OnBannerItemClickListener onBannerItemClickListener) {this.onBannerItemClickListener = onBannerItemClickListener;}@Overridepublic WebBannerAdapter.MzViewHolder onCreateViewHolder(ViewGroup parent, int viewType) {return new MzViewHolder(LayoutInflater.from(parent.getContext()).inflate(R.layout.item_image, parent, false));}@Overridepublic void onBindViewHolder(WebBannerAdapter.MzViewHolder holder, final int position) {if (urlList == null || urlList.isEmpty())return;final int P = position % urlList.size();String url = urlList.get(P);ImageView img = (ImageView) holder.imageView;Glide.with(context).load(url).into(img);holder.textView.setText(urlList.get(position));img.setOnClickListener(new View.OnClickListener() {@Overridepublic void onClick(View v) {if (onBannerItemClickListener != null) {onBannerItemClickListener.onItemClick(P);}}});}@Overridepublic int getItemCount() {if (urlList != null) {return urlList.size();}return 0;}class MzViewHolder extends RecyclerView.ViewHolder {ImageView imageView;TextView textView;MzViewHolder(View itemView) {super(itemView);imageView = (ImageView) itemView.findViewById(R.id.image);textView = (TextView)itemView.findViewById(R.id.itemte);}}}
item_image.xml
<?xml version="1.0" encoding="utf-8"?>
<android.support.v7.widget.CardView xmlns:android="http://schemas.android.com/apk/res/android"xmlns:app="http://schemas.android.com/apk/res-auto"android:layout_width="250dp"android:layout_height="100dp"app:cardCornerRadius="5dp"><ImageViewandroid:id="@+id/image"android:layout_width="match_parent"android:layout_height="match_parent"android:scaleType="fitXY"/><TextViewandroid:id="@+id/itemte"android:layout_width="wrap_content"android:layout_height="wrap_content"android:text="aaa"/>
</android.support.v7.widget.CardView>
方法二:
圆角代码
Glide.with(context).load(entry.getBannerPath()).apply(new RequestOptions().diskCacheStrategy(DiskCacheStrategy.ALL).placeholder(R.color.white).transforms(new CenterCrop(), new RoundedCorners((int) 14))).into((ImageView) imageView);
实现效果
demo云盘链接:https://pan.baidu.com/s/1dJuZIhy5Lub_VE48e5JFuw
在线回复密码bug交流:扣1085220040
Android 最新左右可见上下页的banner实现demo相关推荐
- android github轮播图,GitHub - ZTJzzz/Banner: Android轮播图
Android轮播图 - Banner 纵观Android古今,轮播图已然泛滥成灾!大神们各显神通大兴土木,所起楼台之高让后来者心生膜拜,纷纷Star!但不法分子也是层出不穷,为求"大神&q ...
- Android最新开源框架大全
1. Retrofit 一句话介绍:Retrofit是一款类型安全的网络框架,基于HTTP协议,服务于Android和java语言 上榜理由:Retrofit以21.8k的stars量雄踞github ...
- Android进阶篇之引导页系列之ViewPager实现Animation动画引导页
Android进阶篇之引导页系列之ViewPager实现Animation动画引导页 转载于:https://www.cnblogs.com/zhujiabin/p/5795789.html
- 最新70佳单页网站设计案例欣赏(上篇)
单页网站是指只有一个页面的网站,这种形式的网站曾经非常流行,现在依然有很多人喜欢.不过,并不是每个网站都适合做成单页,一般都是内容比较少而且将来内容也不怎么增加的情况才适合这样做.如果你打算做一个这样 ...
- 【转】在Ubuntu上下载、编译和安装Android最新源代码
原文网址:http://blog.csdn.net/luoshengyang/article/details/6559955 看完了前面说的几本书之后,对Linux Kernel和Android有一定 ...
- 【Android 基础知识】翻页类视图 ViewPager
文章目录 1.翻页视图 ViewPager 2.翻页标题栏 PagerTitleStrip/PagerTabStrip 1.翻页视图 ViewPager 对于 ViewPager 来说,一个页面就是一 ...
- android最新源码(4.4.2_r1版本以上)下载
来源:http://blog.csdn.net/zeroboundary/article/details/17555183 android最新源码(4.4.2_r1版本以上)下载 参考:http:// ...
- Android模仿淘宝详情页界面
话不多说-先上效果图: 图1中主要需要实现的效果: 1.轮播图 2.顶部导航栏的渐变 3.顶部导航栏随着滑动的位置选择对应的值以及点击滑动到对应位置 Android模仿淘宝详情页界面文件:url80. ...
- android_54a3,Android最新的各个分支版本号(2013-10-27)
用如下命令,可以获取android最新的各个分支版本号: gaojs@ubuntu:~$git ls-remote --tags https://android.googlesource.com/pl ...
最新文章
- 课程作业1:字符型强制转化为整型
- Android Studio最全插件整理
- js 正则表达式实现文本验证
- java中的v递归的思想,Java中的递归思想 - osc_9lqilnv7的个人空间 - OSCHINA - 中文开源技术交流社区...
- html视频鼠标移除不播放,html - 在Mouseover上播放Gif并在鼠标移除时暂停Gif而不替换图像? - 堆栈内存溢出...
- 注意力机制(SE、Coordinate Attention、CBAM、ECA)、即插即用的模块整理
- (06)Vivado约束基础
- c语言明解课后答案,《明解C语言》第三章笔记和练习题
- Wannafly交流赛1: C. 腰带图(瞎搞)
- 10.03今日暂时停更博客
- “123456”连续七年霸榜,2019最糟糕密码榜单出炉
- android视频实时编辑器,视频编辑器app下载
- 两数相加(有序/无序) 时间复杂度小于 O(n2)做题心得
- java excel 增加链接_Java 添加超链接到Excel文档
- C++飞机票订票系统
- Airflow Architecture
- Excel学习笔记之基础篇
- CTF 每日一题 Day18 传统知识+古典密码
- 搭建mpi测试环境,使用intell的mpi库
- 直流无刷电机FOC控制算法 理论到实践 —— 理论(二)
热门文章
- 工作332:uni-uview上传获取到对应数据
- 前端学习(2577):Nuxt解决了什么问题
- 前端学习(96):切图流程
- spring mvc学习(23):eclipse创建Maven项目没有src/main/java并不能新建的问题
- 第五十七期:小型企业将如何从5G中受益
- 玩转oracle 11g(18):数据库相关日志文件位置
- 计算机基础知识excle,职称计算机基础知识:Excel工作表的复制
- 花卉网页html,花卉管理系统(数据库+源码)
- 8s nfs 挂载文件_把你的树莓派家庭实验室变成一个网络文件系统 | Linux 中国
- python画蜡烛致敬烈士_「」matplotlib 股票-用python绘制蜡烛线型k线图是用代码还是绘图工具-TOP金融网...