⾃定义布局流程 布局过程 确定每个 View 的位置和尺⼨
作⽤:为绘制和触摸范围做⽀持
绘制:知道往哪⾥绘制
触摸反馈:知道⽤户点的是哪⾥–
流程 从整体看 测量流程:从根 View 递归调⽤每⼀级⼦ View 的 measure() ⽅法,对它们进⾏测量
布局流程:从根 View 递归调⽤每⼀级⼦ View 的 layout() ⽅法,把测量过程得出的⼦ View
的位置和尺⼨传给⼦ View,⼦ View 保存
为什么要分两个流程? 从个体看,对于每个 View: 运⾏前,开发者在 xml ⽂件⾥写⼊对 View 的布局要求 layout_xxx
⽗ View 在⾃⼰的 onMeasure() 中,根据开发者在 xml 中写的对⼦ View 的要求,和⾃⼰的可⽤空间,得出对⼦ View 的具体尺⼨要求