我想用这样的发光效果绘制线条
问题 - 我必须根据用户的交互在程序中生成这一行(行的形式将在onTouchEvent
- ACTION_MOVE
中生成。)
我可以在没有xml文件或绘制premaid位图的情况下生成此效果吗?
答案 0 :(得分:60)
我以这种方式模仿这种效果:
BlurMaskFilter
; 我使用Path类生成行并保存MOVE_ACTION
事件的坐标,以仅生成我需要的路径的一部分。
创建2 Paint()
s:
_paintSimple = new Paint();
_paintSimple.setAntiAlias(true);
_paintSimple.setDither(true);
_paintSimple.setColor(Color.argb(248, 255, 255, 255));
_paintSimple.setStrokeWidth(20f);
_paintSimple.setStyle(Paint.Style.STROKE);
_paintSimple.setStrokeJoin(Paint.Join.ROUND);
_paintSimple.setStrokeCap(Paint.Cap.ROUND);
_paintBlur = new Paint();
_paintBlur.set(_paintSimple);
_paintBlur.setColor(Color.argb(235, 74, 138, 255));
_paintBlur.setStrokeWidth(30f);
_paintBlur.setMaskFilter(new BlurMaskFilter(15, BlurMaskFilter.Blur.NORMAL));
并且我的Path()
画了两次:
@Override
protected void onDraw(Canvas canvas) {
canvas.drawPath(mPath, _paintBlur);
canvas.drawPath(mPath, _paintSimple);
}