Android Canvas 清除背景

使用

canvas.drawColor(Color.TRANSPARENT, PorterDuff.Mode.CLEAR);

即可完成清除背景, 但是发现 Canvas 会留下黑色背景,以下提供处理方法

//使窗口支持透明度
surfaceHolder.setFormat(PixelFormat.TRANSLUCENT);

实例代码:

Canvas canvas = surfaceHolder.lockCanvas();
if (canvas != null) {
       surfaceHolder.setFormat(PixelFormat.TRANSLUCENT);//使窗口支持透明度
       canvas.drawColor(Color.TRANSPARENT, PorterDuff.Mode.CLEAR);
       surfaceHolder.unlockCanvasAndPost(canvas);
}

你可能感兴趣的:(Android Canvas 清除背景)