Android RecyclerView 完全解析

本文详细介绍了RecyclerView的基本概念及其在Android开发中的应用。RecyclerView通过LayoutManager、ItemDecoration和ItemAnimator等组件实现了灵活多样的布局效果和动画效果,如传统的ListView和GridView风格、横向滚动、瀑布流布局以及自定义的增删动画。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

什么是RecyclerView

你想要控制其显示的方式,请通过布局管理器LayoutManager
你想要控制Item间的间隔(可绘制),请通过ItemDecoration
你想要控制Item增删的动画,请通过ItemAnimator
![RecyclerView能干什么][1]
RecycleView
1、不关心Item是否显示在正确的位置,如何显示 —–用LayoutManager
2、不关心Item间如何分隔 —–ItemDecoration
3、不关注Item增加与删除的动画效果 —-ItemAnimator
4、仅仅关注如何回收与复用View

RecycleView相关的重要的类
1、Adapter
2、ViewHolder
3、LayoutManager
4、ItemDecoration
5、ItemAnimator

RecycleView能干什么
1、Just like Listview —–用LayoutManager
2、Just like GridView —–用LayoutManager
3、横向ListView —–用LayoutManager
4、横向GridView —–用LayoutManager
5、瀑布流 —–用LayoutManager
6、定制Item增加与删除动画 —-ItemAnimator
RecycleView 设计思想:
不关心内部的item是否显示在正确的位置,如何显示<—–LayoutManager(设置LinearLayoutManager,GridLayoutManager)
不关心item间如何分隔<——–ItemDecoration(ListView可以通过Divider来设置)
不关心item增加与删除的动画效果<——ItemAnimator(可实现其子类)
仅仅关注如何回收与复用view

属于一个插件式的架构,通过三个类的组合来实现需求

相关的重要类:
Adapter(自己的适配器)
ViewHolder(强制使用)
LayoutManager
ItemDecoration(分隔效果)
ItemAnimator(动画效果)

RecyclerView能实现:
依赖于LayoutManager的设置
1、Just like ListView(显示传统ListView的风格)
2、Just like GridView(显示传统GridView的风格)
3、横向ListView
4、横向GridView
5、瀑布流
依赖于ItemAnimator的设置
6、定制Item增加与删除动画
![listview和gridview等排列方式点转换,同时满足漂亮的添加删除][2]

实现ListView

继承Adapter
创建ViewHolder
构造函数传递参数进来,LayoutInflater用于得到布局
getItemCount()返回list大小
onCreateViewHolder()创建刚刚给的MyViewHolder(布局view)
在ViewHolder传入的View后,初始化控件,设置属性
onBindViewHolder()中给holder中控件赋值
回到Activity中给RecylerView设置layoutmanager(linear 或者grid)
![ViewHolder][3]
![此处输入图片的描述][4]
initDatas();initViews();
mRecyclerView.setAdapter(new SimpleAdapter(this,mDatas));
linearLayoutManager= new LinearLaoutManager(this,xx,xx);
mRecyclerView.setLayoutManager(linearLayoutManager);
![gradle配置recylerView导包][5]

添加分割线

![使用这时RecylerView分割线 .addItemDecoration(),增加一个类][6]
![补充分割线][7]

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值