RecyclerView: RecyclerView及与其相关的类(ItemDecoration、LayoutManager 、Adapter)

RecyclerView

  • getChildAdapterPosition(View):获取View在Adapter中的position。
  • getChildLayoutPosition(View):获取view在layout中的position。注意:大部分情况下,它与getChildAdapterPosition()是相同的。但是当布局发生改变,且新布局尚未完成时两者的值是不同的
  • getChildCount(): 获取当前可见的item的数量。注意:是可见的item的数量,不是总item的数量。

 

LayoutManager

  • getLeftDecorationWidth(View) & getTopDecorationHeight(View) & getRightDecorationWidth(View) & getBottomDecorationHeight(View): 返回当前子View的itemDecoration的左上右下侧的距离;
  • findFirstVisibleItemPosition(): 拿到第一个可见item的position;

 

ItemDecoration

  • getItemOffsets():获取每一个item的在各个方向的需要额外留出的空余量,各个方向空余量的值需要设置到第一个参数Rect对象中。
  • onDraw():为RecyclerView添加一些额外的修饰,该方法会在item绘制之前进行调用。也就是说它绘制的内容可能会被item给覆盖住——如果绘制在item的空格处就不会被挡住。
  • onDrawOver():基本上与onDraw()类似,只不过在item绘制之后绘制。因此可能会覆盖住item的内容。

 

参考链接:

1. RecyclerView及与其相关的类

 

posted @ 2020-09-22 15:20  夜行过客  阅读(515)  评论(0编辑  收藏  举报