如下图红框中红色或绿色:
![](https://img.haomeiwen.com/i5969357/90cf01dcfb8b3d1b.png)
这种效果有很多实现,这里记录一种使用Path实现的:
使用的Api:
path.addRoundRect(RectF rect, float[] radii, Path.Direction dir);
重点是第二个参数 float[] radii,radii是一个长度为8的数组,里面存放的为radius,对应矩形四个角,具体对应关系如下:
float[] radii[] = new float[]{ 左上,左上, 右上,右上, 右下,右下, 左下, 左下 };
以上图左边红色进度条为例,代码应为:
int radius = 5;
Paint paint = new Paint();
paint.setColor(color);
RectF rectF =new RectF(0,0,width,hight);
Path path = new Path();
float radius[] = new float[]{ radius, radius, 0, 0, 0, 0, radius, radius };
path.addRoundRect(rectF, radius,Path.Direction.CW);
canvas.drawPath(rectF ,path, paint );
/**
* the end
*/
网友评论