分享2个类完成的RecyclerView封装 , 简洁 通用

栏目: IOS · Android · 发布时间: 7年前

内容简介:代码已在多个项目中使用,已改版多次,目前功能稳定,抽出来远程库,方便复用。具体使用,可以下载代码,运行里面的Demo即可。
  1. 不管是ListView还是RecyclerView,大多数的基本写法都是写适配器,里面的重复性代码比较多,一堆Adapter,喜欢复制粘贴的内容更是混乱,非常容易出错
  2. 部分功能代码写在适配器中,某些功能不能复用,冗余度过高,免不了会复制粘贴
  3. 如果遇到复杂的列表时候(比如聊天界面),Adapter的内容更是爆炸
  4. 问题就是复用性偏差,代码冗余度高,可读性不好,容易出错.

解决的问题

  1. 主要解决复用性问题,代码简洁,基础流程固定,不会出错
  2. 这是一个组件思维,给我一个数据源,我来管理UI的展示和部分业务操作(类似常用的组合View或自定义View)。
  3. 通用性的封装,让全局使用统一的一个适配器,免除重复性代码;
  4. RecyclerView的展示一项对应一个ViewHolder,任意组合,无需设置ViewType即可完成复杂页面的拼接(比如聊天界面)

项目介绍

主要是对代码调用流程和固定代码的封装,

库的核心只有2个类

  1. RecyclerAdapter:通用的一个适配器
  2. RecyclerDataHolder:通用的数据包装类
  3. 还有几个很常用的通用功能类,可以忽略

使用简介

第一步:只有一个RecyclerAdapter适配器设置给RecyclerView (代码固定)

第二步:创建ReyclerView展示的一项
 xxxItemDataHolder类继承RecyclerDataHolder的实现方法即可 (写法固定)
 xxxItemDataHolder 实现方法三个方法 
 
 getItemViewLayoutId: 展示的布局id (写法固定)
 onCreateViewHolder: 设置ViewHolder,可自定义或直接new RecyclerViewHolder(写法固定)
 onBindViewHolder: 给ViewHolder设置数据 (变化的UI展示和业务)

第三步:创建数据源 List<xxxItemDataHolder> 并设置给RecyclerAdapter即可(写法固定)
复制代码

库中的其他几个功能类

  1. RecyclerCallBack 常用事件回调接口
  2. RecyclerViewHolder 添加了几个常用方法
  3. ItemSpaceDecoration 用来设置RecyclerView的行间距
  4. StickRecyclerAdapter 浮动标题设置
  5. OnPageScrollBottomListener 滚动到底部监听

代码已在多个项目中使用,已改版多次,目前功能稳定,抽出来远程库,方便复用。具体使用,可以下载代码,运行里面的Demo即可。

代码是自己的分享,仅供学习参考交流,有问题可直接留言或 联系QQ:1079569023


以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,也希望大家多多支持 码农网

查看所有标签

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们。

程序算法与技巧精选

程序算法与技巧精选

郭继展 / 2008-5 / 36.00元

《信息科学与技术丛书•程序算法与技巧精选》分17章,139个例题。书中介绍的算法和技巧涉及到随机数函数理论,基础数论,新意幻方,提高程序运行速度和精度,特定数据排序,穷举、递推、递归和迭代等诸多方面。这些算法和技巧大多是作者历年从事教学、软件开发、学术研究和学习的成果总结。 《信息科学与技术丛书•程序算法与技巧精选》内容不涉及计算机专业课程的诸多概念、理论,读者只需要学过C语言,有算法、结构......一起来看看 《程序算法与技巧精选》 这本书的介绍吧!

JSON 在线解析
JSON 在线解析

在线 JSON 格式化工具

RGB转16进制工具
RGB转16进制工具

RGB HEX 互转工具

随机密码生成器
随机密码生成器

多种字符组合密码