在项目中使用RecyclerView详解

  • 使用步骤

  • 1.创建RecyclerView xml⾥⾯配置
  • 2.代码中配置属性
    确定样式 layoutManager
    确定数据源

数据源最好是在adapter中设置

  • 3.定义⼀个类实现RecyclerView.Adapter接⼝
    RecyclerView就是通过接⼝⾥⾯的⽅法来访问数据的
    a. 创建⼀个类继承于RecyclerView.ViewHolder
    重复利⽤
    b. 重写adapter⾥⾯的抽象⽅法
    c. 接收外部传递过来的数据源 1)构造函数 2)属性
    d. getItemCount 确定元素个数
    e. onCreateViewHolder 确定每⼀个item的视图
    1)⾃⼰创建⼀个View 或者 ⽤⼀个xml⽂件来布局
    2)通过LayoutInflater解析布局⽂件 xml -> View
    1. 设置item装饰器
      addItemDecoration
      1)系统提供的 DividerItemDecoration 分割线
      效果:


      DividerItemDecoration

2)⾃⼰创建⼀个类继承于ItemDecoration 重写onDraw或者
onDrawOver、getItemOffset

项目详解:

【1】项目目录讲解


项目文件讲解
  • 1)MainActivity 项目主Activity,在这里配置RecyclerView的layoutManageradapter以及相关的itemDecorationPagerSnapHelper
  • 2)Repository数据中转站,在这里面封装了一个方法loadData(),在这里可以获取到数据(从数据库,本地,网络等,但现在只做了本地的),并且该类采用单例设计模式,因为只存在一个对象就可以实现相应功能,不仅节约内存,而且安全。
  • 3)AskData接口,统一了接口,只有一个方法getData(),要发送数据的端(如网络服务器,数据库,本地等)都要实现这个接口
  • 4)NewsModle新闻数据模型,一个数据类,模型,也可以叫做Bean,总之就是规范了数据格式,只有4种数据格式title:String,val imageId:Int,val like:Int,val type:Int
    分别对应着,标题,图片资源,点赞数,还有新闻的类型(这里只有两种新闻类型,分别对应着不同的显示样式)
  • 5)MyAdapter这个不用说了,RecyclerView的适配器,在这个获取数据,并且绑定到item对应的位置显示

【2】使用步骤

  • 1)在xml文件中配置RecyclerView


    配置RecyclerView
  • 2)在MainActivity的onCreat()方法中设置布局管理器


    设置布局管理器
  • 3)配置adapter,不多废话,上代码


    adapter
  • 4)设置好后在MainActivity中添加该适配器和辅助类和itemDecoration


    配置

大概就是这样,下面上所以代码:

MainActivity:


MainActivity

Repository:


Repository

MyAdapter:
MyAdapter

NewsModle:


NewsModle

LocalUtil:
LocalUtil

AskData:
AskData

项目效果:

你可能感兴趣的:(在项目中使用RecyclerView详解)