您的位置:首页 > 移动开发 > Android开发

android 自定义view二

2015-08-23 19:28 363 查看
还是照着hongyong的博客来学习

不过遇到几个问题,转几个圈之后会停下来,不知道为什么

先分析下代码逻辑

一个线程不断更新progress然后重绘,

当progress = 360度的时候,说明画完一个圈了

这个时候把progress置0,修改isNext

isNext实际上就是标明该画哪个颜色的圆,比如,先画红的,再画蓝的

先画一个圆,再画圆弧

似乎没问题,但是调试发现,在一段时间后,ondraw就不在调用了(postinvalidate还是会跳到这) 不知道为什么

// 画圆弧

canvas.drawArc(oval, 0, mProgress, false, mPaint);这个方法的参数是

public void drawArc(RectF oval, float startAngle, float sweepAngle,boolean useCenter, Paint paint)

:指定圆弧的外轮廓矩形区域。
startAngle: 圆弧起始角度,单位为度。
sweepAngle: 圆弧扫过的角度,顺时针方向,单位为度。
useCenter: 如果为True时,在绘制圆弧时将圆心包括在内,通常用来绘制扇形。
paint: 绘制圆弧的画板属性,如颜色,是否填充等。

如果第二个参数是0,那么正好是习惯上的90度,不知道为什么会这样,在android相机预览也有这个角度偏转问题

设置为-90度,则正好是习惯上的角度
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: