1,setPathEffect:
1,DashPathEffect实现虚线线条风格,在画笔为非FILL风格时候生效
DashPathEffect(float intervals[], float phase)
intervals长度必须不能小于2,用于描述虚线中实现和虚线的宽度值。
phase表示虚线起点的偏移量
样例:
效果图:
CornerPathEffect 用于实现线条折弯出的圆角效果
效果图如下:
DiscretePathEffect:用于将线条打散
效果图:
PathDashPathEffect:实现已指定Path形状的画笔绘制
第一个参数表示代表画笔形状的路径
第二个参数表示绘制两个指定形状的画笔中间间隔
第三个参数表示绘制第一个形状画笔起始坐标偏移量
第四个样式是风格
mPaint.strokeWidth=1f
mPaint.pathEffect= PathDashPathEffect(mPath,8f,0f,PathDashPathEffect.Style.TRANSLATE)
mPath.addCircle(0f,0f,2f,Path.Direction.CW);
canvas.drawCircle(width/2f,height/2f,width/2f,mPaint)
效果图:
SumPathEffect:同时实现两种PathEffect效果,将两种效果单独表现出来,再进行合并
ComposePathEffect:组合效果,也就是在第一个效果的基础上再进行变换