LinearLayoutManager中确定锚点的方法是updateAnchorInfoForLayout(),代码如下,updateAnchorInfoForLayout通过三种判断来获取anchor信息,首先从updateAnchorFromPendingData()中获取anchor信息,如果获取到了,直接返回;如果没有获取到,再从updateAnchorFromChildren()中获取anchor信息,如果获取到的话,也是直接返回;如果前两个方法...
1.设置LinearLayoutManager2.设置Adapter()(数据添加了观察者,数据增加就会调用 RecyceleView 添加子View)3.Adapter的list添加数据notifyDataSetChanged()刷新适配器4.观察者调用 LinearLayoutManager.onLayoutChildren()布局添加数据 2.LinearLayoutManager 处理子条目 2.1 调用LinearLayoutManager.onLayoutChildren() onLayout...
可以看到在recyclerview的 onMeasure 调用了mLayout的onLayoutChildren方法 并将Recycler与 包含了 适配器一些信息的包装成一个State参数 传入mLayout的onLayoutChildren。 接下来看一下LinearLayoutManager LinearLayoutManager.class//初始化publicLinearLayoutManager(Context context,int orientation,boolean reverseLayout){setO...