今天在空余时间学了一会关于自定义View的实现, 想着以后在MyViewDemo
做一系列的有意思的自定义View。这一次的自定义view实践主要了解一下自定义view的实现过程
- view的测量获取其宽高
- view的绘制
- view的刷新
|
view的绘制
view的绘制主要用到画布Canvas,以及画笔Paint。我们这时重写View的方法onDraw()。首先将画布的圆心移到View的中间(调用 canvas.translate(mWidth / 2, mHeight / 2)),然后获取半径的长度,通过过相关的运算画出两部分不一样的饼状图
|
view的刷新
通过在布局文件调用两个seekbar控件,并通过监听OnSeekBarChangeListener()并调用View的刷新方法
setPercent(float percent),最终调用重新绘制画布的方法invalidate()刷新View;
|