我正在制作一个需要能够在最后一组之上绘制新图形的应用程序。
这是我当前的 onDraw() 方法 -
protected void onDraw(Canvas canvas) {
canvas.drawColor(Color.WHITE);
if(points.size() > 0) {
//do some stuff here - this is all working ok
canvas.drawLine(p1.x, p1.y, p2.x, p2.y, linePaint);
}
}
基本上,我需要将新图形绘制为最后一个图层之上的一层,所以我正在寻找一种将最后一个画布的图像带到当前的方法。
我尝试使用 canvas.setBitmap() 方法自己弄清楚它,但它的行为非常有趣。
任何帮助表示赞赏:)
PS如果需要,该类扩展SurfaceView
并实现SurfaceHolder.Callback
编辑:这是我在 onDraw() 方法中尝试过的,但它只是强制关闭
if(bitmap != null) {
canvas.drawBitmap(bitmap, 0, 0, paint);
canvas.setBitmap(bitmap);
}