当添加到容器的View是通过new创建出来的,没有设置layoutparam,就会进入`generateDefaultLayoutParam()`去生成一个默认的LayoutParam
当View是通过Layout.inflater或View.inflate生成的,会进入`generateLayoutParams(AttributeSet)`这个方法
剩余两个方法,则是View通过new创建出来的,同时去设置了LayoutParam会进入的方法,不重写的话会报错
自定义 ViewGroup
1 考虑场景=> onMeasure
2 onMeasure spec 值 + mode
3 mode 是由哪些操作影响的
4 view.gone
5 自定义属性
6 利用系统的属性帮我们完成自定义属性操作
7 layoutparams 相关四个方法
8 padding