我有以下问题:我创建了一个从 SurfaceView 扩展的类,它也实现了 SurfaceHolder.Callback,但是当我尝试绘制一个红色方 block 时,它总是黑色的。在我的代码下面:
首先我在构造函数中调用以下方法:
private void initTransparentBackgroundColor(){
this.setBackgroundColor(Color.TRANSPARENT);
this.setZOrderOnTop(true);
getHolder().setFormat(PixelFormat.TRANSPARENT);
}
然后,我开始画画:
protected void onDraw(Canvas canvas){
Paint p = new Paint();
p.setColor(Color.RED);
p.setStyle(Paint.Style.FILL_AND_STROKE);
canvas.drawRect(10,10,20,20,p);
}
我做错了什么?
最佳答案
替换
getHolder().setFormat(PixelFormat.TRANSPARENT);
为此
getHolder().setFormat(PixelFormat.TRANSLUCENT);
祝你好运。 :)
关于java - 在透明 SurfaceView 上绘制,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27506903/