onmeasure
layout
ondraw
这里只有几个只问题就可以弄清楚。
1.你要在哪个地方画view,如何让我们可以快速的找到那个地方。
2.如何保证多个view不重叠(导致看不完全,当然也有这样子的需求),也可以自适应大小。
3.如何保证将2.中的所有view当成模板,比如listview,不会在各种viewgroup同时使用时冲突
4.使用自定义viewgroup和嵌套其他viewgroup时随意改变参数能达到想要的效果。
首先,xml中有布局,则<framelayout
中的view则为遍历子view的时候调用getchild就是作用在这里,还有参数属性等等都在这里
/>
onmeasure()会调用父viewgroup的onmeasure()得到父分配给自身的宽高,会根据xml或者java代码用getchild得到子view,然后得到参数属性,然后通过转换得到各个子view的宽高,这些都是根据java代码或者xml来的。一切尺寸以xml或者java代码(在addview()中加的参数属性)换句话说一切以属性为主。
本质来说是尺寸的分发。