RecyclerView和listview的区别

本文详细介绍了RecyclerView的使用方法及其与ListView的区别,包括高度解耦化的特性、动画支持等,并讲解了RecyclerView的复用原理及其实现步骤。

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

RecyclerViewgeng效果比listview更酷炫

效果有有列表,表格,瀑布流三种效果,就是管理者不同,所以参数略有不同,

功能的高度解耦化,规范 ViewHolder 的写法,以及对动画友好支持,都是它与传统控件 ListView 的区别。而无论 ListView 还是 RecyclerView,本质上都是在有限的屏幕之上,展示大量的内容。所以复用的逻辑,就成了它们最最重要的核心原理,本文主要目的就是探究 RecyclerView 的复用原理。

适配器的不同:
 1.继承RecyclerView.Adapter
 2.viewholder
 3.定义范型<类名.ViewHolder>
 4.创建构造函数得到外界上下文和数据
 5.onCreateViewHolder创建布局的对象
 6.viewholder查找控件对象
 7.onBindViewHolder绑定数据

重写的方法:

  1.  onBindViewHolder  相当于getview,当viewhonlder和数据绑定时回调
  2. getItemCount数据条目数,有几条显示几条
  3.   ViewHolder 需要继承RecyclerView.ViewHolder,类似ListView中的viewholder,优化

高度解耦,就是通过以上对象各司其职,来实现 RecyclerView 的基本功能

RecyclerView 的几大模块:

  • LayoutManager 
    负责 RecyclerView 中,控制 item 的布局方向

  • RecyclerView.Adapter
    为 RecyclerView 承载数据

  • ItemDecoration
    为 RecyclerView 添加分割线

  • ItemAnimator
    控制 RecyclerView 中 item 的动画

三种管理者:

GridLayoutManager继承LinearLayoutManager,其他两个继承的LayoutManager

LinearLayoutManager(线性布局效果)

GridLayoutManager(网格布局效果)

StaggeredGridLayoutManager(瀑布流布局效果)

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值