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);
}
posted @ 2022-11-15 08:48  IT_IOS_MAN  阅读(200)  评论(0编辑  收藏  举报