Android中RecyclerView实现多级折叠列表效果(二)

  

  

在本文开始之前请大家先看一下这篇文章:https://www.jb51.net/article/113510.htm

  

上面的这篇文章是之前写的,里面发现有很多不好用地方,也学到些新姿势,改动了许多地方。下面来看看详细的介绍:

  

  

,,,,,1 .可以通过后台控制项目的展示。
  

  

,,,,,2. treerecycleradapter,可以展开,折叠。多级展示
  

  

,,,,,3.适配器可以使用装饰者模式进行扩展。支持EmptyAdapter。可以添加headview和footview
  

  

,,,,,4.项目的样式可以编写文档,类型与类进行对应,实现后台控置,相同项复用。

  

  

,,,,,1.适配器应该只需要关心List数据的内容

  

,,,,,2 .把每个项目看成独立的个体。布局样式,每行所占比,onbindViewHolder由各个项实现。

  

,,,,,3 .每一个项目应该只关心自己的数据和自己的下一级的数据,不会去关心上上级,下下级

  

,,,,,4 .展开的实现,点击时项目把子数据拿出来,然后添加到适配器的数据中,变成同级,因为只会展开自己的下级数据。

  

,,,,,5 .折叠的实现,拿到下级数据(可以理解因为一个文件夹下文件),然后从适配器的数据中删除这些数据。

  

,,,,,6 .后台控制可以通过初始化注册的方法,将项目的类注册。保存到集合里

  

,,,,,7 .后台返回字段,获取对应的类文件,通过<代码> Class.newInstance() 方法构建实例。

  

,,,,,8。将ViewHolder与适配器写成通用的,不需要再写多个Adatper与ViewHolder,只需要写多个Baseitem。与BaseItamData (JavaBean)。

  

        + 1.适配器   * wap - - - - - -扩展的wap,   * EmptyWapper - - - - - - - - - -当无数据时显示页面。   * HeaderAndFootWapper - - - - - - - - - -添加头部视图和尾部的观点      BaseRecyclerAdapter - - - - - - -封装的Adatper基类   ItemManager - - - - - - -接口、管理Adatper刷新,增删操作   ——TreeRecyclerAdapter——多级列表,树形结构的适配器   ——TreeRecyclerViewType——多级列表的显示样式,枚举   ——ViewHolder——封装的通用viewHodler      * 2.基地   BaseItem      

来张丑丑的图:

  

 Android中RecyclerView实现多级折叠列表效果(二)
  

  

  

<强>(一)。BaseRecyclerAdapter:

     /* *   *普通BaseRecyclerAdapter,时候无父子关系。   *限定泛型为BaseItem的子类。   *通过BaseItem去处理ViewHolder   */公开课BaseRecyclerAdapter{      私人ListmDatas;//展示数据   私人ItemManagermItemManager;   私人CheckItem mCheckItem;      @Override   公共ViewHolder>/* *   *由包子>/* *   *项目的基类   */公共抽象类BaseItem/* *   *组合模式   * TreeRecyclerAdapter的项   */公共抽象类TreeItem{   私人TreeItemGroup parentItem;      公共空间setParentItem (TreeItemGroup parentItem) {   这一点。parentItem=parentItem;   }/* *   *获取当前项的父级   *   * @return   */@Nullable   公共TreeItemGroup getParentItem () {   返回parentItem;   }   }

Android中RecyclerView实现多级折叠列表效果(二)