源码分析
RecyclerView extends ViewGroup
缓存复用部分以onCreateViewHolder()和onBindViewHolder()方法作为入口点、重点
onTouchEvent()// 滑动事件,入口点
scrollByInternal()
scrollStep()
scrollHorizontallyBy()|scrollVerticallyBy()-->mLayout(GridLayoutManager extends LinearLayoutManager)-->LinearLayoutManager
scrollBy()-->consumed 消费了得滑动距离
fill()// 关键方法
layoutChunk()-->View view = layoutState.next(recycler);// 缓存复用
measureChildWithMargins()// 测量计算
getItemDecorInsetsForChild()// 获取分割线参数
getItemOffsets()// 默认为0
layoutDecoratedWithMargins()// 布局定位
next()-->final View view = recycler.getViewForPosition(mCurrentPosition);
getViewForPosition()
tryGetViewHolderForPositionByDeadline()// 关键代码&#x