1、概述
ViewGroup是一个View的容器,他可以给出childView的测量模式和测量其宽高,他的作用非常重要。
childView测量模式:
EXACTLY:表示设置了精确的值,一般当childView设置其宽、高为精确值、match_parent时,ViewGroup会将其设置为EXACTLY;
AT_MOST:表示子布局被限制在一个最大值内,一般当childView设置其宽、高为wrap_content时,ViewGroup会将其设置为AT_MOST;
UNSPECIFIED:表示子布局想要多大就多大,一般出现在AadapterView的item的heightMode中、ScrollView的childView的heightMode中;此种模式比较少见。
2、自定义ViewGroup步骤
我们大概了解了ViewGroup的作用,显然这是不够的,我们还需要创建他,因为ViewGroup同样继承自View,所以大致上和View的创建步骤是一样的,但是有几个点需要注意一下。
1:编写构造方法
2:重写OnMeasure函数
3:重写OnLayout函数
4:重写Ondraw函数
5:ViewGroup的LayoutParams(非必须,确定自己支持那些属性,如Margin)