网上一搜一大堆,都说加:
但谁也没说这几句代码放哪。
this.setZOrderOnTop(true);
getHolder().setFormat(PixelFormat.TRANSLUCENT);
清屏用:
canvas.drawColor(Color.TRANSPARENT,Mode.CLEAR);
但谁也没说这几句代码放哪。
由于MySurfaceView搞了3个构造方法,所以我就把代码放到surfaceCreated里去了,怎么运行都不成。
其实只要把上面那两句放到MySurfaceView的构造方法里就行了,清屏代码放在你canvas.draw任何东西之前就OK了。当然,清屏代码可有可无,原因是如果你draw东西的时候draw了一个不会动的东西,那清屏也就没什么意义了。否则,肯定是要加清屏代码的。当然,清屏代码也可以用下面的这种方式:
paint.setXfermode(new PorterDuffXfermode(Mode.CLEAR));
canvas.drawPaint(paint);
paint.setXfermode(new PorterDuffXfermode(Mode.SRC));