繁体   English   中英

bitmap.eraseColor(COLOR.TRANSPARENT)在Surfaceview上不起作用

[英]bitmap.eraseColor(COLOR.TRANSPARENT) not working on surfaceview

我的布局中有一个Surfaceview,我在其中绘制了一个位图。 我通过调用以下代码使Surfaceview透明:

// framebuffer是一个位图

    setZOrderOnTop(true);
    this.framebuffer = framebuffer;        
    this.holder = getHolder();        
    this.holder.setFormat(PixelFormat.TRANSPARENT);

现在,我想使用以下方法清除屏幕:

    framebuffer.eraseColor(Color.TRANSPARENT);

但这行不通。 如果我将Color.TRANSPARENT替换为任何其他颜色,则不会用该颜色绘制整个表面,即

    framebuffer.eraseColor(Color.WHITE);

有人有想法么 ? 提前致谢。

回答我自己的问题。

由于某种原因,我不得不叫两个

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

但是它仍然在闪烁。

尝试清除后,Android SurfaceView / Canvas闪烁

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM