android中View的绘制流程

来源:互联网 发布:unity3d 画笔涂鸦 编辑:程序博客网 时间:2024/06/06 13:19

这个博客写的比较详尽了:http://blog.csdn.net/qinjuning/article/details/7110211;

简单总结下:

measure阶段: 是递归测量阶段;

每个父view会给子view传递限制子view大小的参数,然后子view会根据这个参数和自身的大小得出自己的实际大小(如果是一个Viewgroup就要得出size和mode的组合,继续测量);

父view如果是wrapContent 那么最终根据子view的大小来得到自身大小;

每一个View 都要记住自己的大小,setMeasuredDimension方法是最终设定View的大小的方法;


以LinearLayout 的vertical为例子:

measureChildBeforeLayout 会导致方法压入栈中一直到孩子view都测量完为止;



0 0
原创粉丝点击