android中视图控件的基类是View类,用户自定义视图控件可以从该类继承。View的生命周期如下:
1、构造函数:执行类的初始化工作。
2、onMeasure:决定View的尺寸,该尺寸是能够放下所有子控件的最小外包矩形。
3、onLayout:决定子控件的尺寸和位置。
4、onSizeChanged:当View的尺寸发生改变时调用。
5、onDraw:当View发生重绘时调用。
在实现自定义控件时主要关注onMeasure、onLayout、onDraw这三个过程,对于一些较简单的控件只需关注
onMeasure和onDraw即可。
public void onMeasure(int widthMeasureSpec, int heightMeasureSpec) {
//计算控件的尺寸width,height
//一定要调用该方法指定控件的尺寸
this.setMeasuredDimension(width, height);
}
public void onDraw(Canvas canvas){
//在canvas上绘制控件的外观
}