Android:RecyclerView相关

关键类:

  • Adapter:负责数据的绑定
  • LayoutManager:负责item的布局
    1. 协助RecyclerView完成OnMeasure过程
    2. 通过onLayoutChildren完成对子View的布局
    3. 滚动子视图
    4. 滚动过程中判断何时添加View,何时回收View,也是对缓存时机的判断
  • ItemDecoration:添加分割线,做一些装饰
  • RecyclerView:view类,控制缓存
    1. mChangedScrap(屏幕内缓存),数据已变的,在每次view绘制时用到
    2. mAttachedScrap(屏幕内缓存),未与RecyclerView分离的,在adapter.notifyxxx时用到
    3. mCachedViews(屏幕外缓存),ViewHodler缓存列表,默认容量为2,在放不下的时候放入缓存池
    4. ViewCacheExtension,开发中可以自定义的一层缓存
    5. RecycledViewPool,缓存池,SparseArray> mScrap,存入的时候会清除状态,所以再从中取出来的时候需要重新绑定。
  • ItemAnimator:负责tem的动画

一些可优化操作:

  • 添加Header、Footer(可通过装饰者模式)
  • 下拉加载更多
  • Item点击事件
  • Item中控件局部刷新
    1. notifyItemChanged(position,payLoads) 通过此方法进行刷新
    2. onBindViewHolder(holder,position,payLoads) 重新此方法,设置新的数据到view
  • 列表过度绘制
  • 插入、删除等不要全局刷新

你可能感兴趣的:(Andoird)