RecyclerView

来源:互联网 发布:mysql navicat 破解版 编辑:程序博客网 时间:2024/05/29 18:04

RecyclerView:可以实现类似ListView,GridView的功能, 从名字上看,他是一个回收的View,他里面有两个缓存,一个Scrap,另一个Recycle,Scrap缓存中存放的是这样的View,这些View是接下来要用的,并且里面的数据无需更改;而Recycle缓存里面存放的View为里面的数据需要重新绑定的。
当我们去获取一个新View的时候,RecyclerView会先去Scrap缓存中看有没有对应Position的View,如果没有就去,Recycle中取,然后回调onBindViewHolder方法(如果缓存为空就调用onCreateViewHolder()),然后将绑定了数据的View返回。

RecyclerView使用步骤:

  • 设置布局管理器:

    mRecyclerView.setLayoutManager(layout);

  • 设置adapter

    mRecyclerView.setAdapter(adapter);

  • 设置添加、删除Item时候的动画

    mRecyclerView.setItemAnimator(new DefaultItenAnimator());

  • 设置Item分割线

mRecyclerView.addItemDecoration(new …);(如果只是单纯需要在Item之间又空白,可以在Item里面设置margin属性就好)

RecyclerView的LayoutManager有以下三种(也可以自己实现):
LinearLayoutManager 线性布局管理器
GridLayoutManager 表格布局管理器
StaggeredGridLayoutManager 瀑布流布局管理器

RecyclerView没有ClickListener和LongClickListener需要我们自己去写。

1 0
原创粉丝点击