自定义控件
1.组合控件。这种自定义控件不需要我们自己绘制,而是使用原生控件组合成新控件,如标题栏。
2.继承原有的控件。这种自定义控件在原生控件提供的方法外,可以添加一些自己的方法,如制作圆角图片。
3.完全自定义控件。这个View上所展现的内容全部都是我们自己绘制出来的,比如制作水波纹进度条。
view的绘制流程
1.OnMeasure():测量视图大小。从顶层父View到子View递归调用measure方法,measure方法又回调OnMeasure
2.OnLayout():确定View位置。进行页面布局。从顶层父View向子View的递归调用view.OnLayout方法的过程,即父View根据上一步measure子View所得到的布局大小和布局参数,将子View放在合适的位置
3.OnDraw():绘制视图.ViewRoot创建一个Canvas对象,然后调用OnDraw()
绘制视图的背景
保存画布的图层
绘制View的内容
绘制View子视图
还原图层
绘制滚动条
网友评论