一、VIew 中对 子视图 进行 measure() 操作:
1.measureChildren() : 内部调用 measureChild() 对每一个子视图进行 measure 操作
2.measureChild() : 为指定的子视图进行measure操作
3.measureChildWithMargins() : measure 时考虑把 margin 及 padding 也作为子视图大小的一部分
二、measureChildWithMargins() 执行流程:
1.调用child.getLayoutParams()获得子视图的LayoutParams属性
1.1 该方法需要重载 generateDefaultLayoutParams() 返回一个继承自 ViewGroup.MarginLayoutParams 的 布局类(例如 LinearLayout.LayoutParams),
如果未重载将导致 本 View 的XML属性 layout_margin 失效并且不能使用 measureChildWithMargins()