我想创建一个绘图应用程序,允许用户以不同的颜色绘制。除了改变颜色,我能够提出所有建议。

我有一个初始的红色油漆来绘制几条线,并且当我将颜色更改为绿色时,所有先前绘制的线都会更改。我希望以前绘制的线条保留其红色,而新的线条将保留为绿色。

    canvas.drawPath(mPath, mPaint);


我使用canvas.drawPath方法与mPaint绘画一起绘制。但是当我改变mPaint的颜色时,一切也都会改变颜色。

我试图浏览网络,但找不到任何东西,我花了很长时间才弄清楚它。请帮忙。

最佳答案

您可以在Main类中使用此代码,这将对您非常有帮助

@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(new MyView(this));

mPaint = new Paint();
mPaint.setAntiAlias(true);
mPaint.setDither(true);
mPaint.setColor(0xFFFF0000);
mPaint.setStyle(Paint.Style.STROKE);
mPaint.setStrokeJoin(Paint.Join.ROUND);
mPaint.setStrokeCap(Paint.Cap.ROUND);
mPaint.setStrokeWidth(3);
 }
 private Paint mPaint;
 private MaskFilter mEmboss;
 private MaskFilter mBlur;
 public void colorChanged(int color) {
 mPaint.setColor(color);
 }

关于android - Android QN:更改绘画的颜色而不影响先前绘制的线条,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/7900063/

10-09 05:33