有時候我們有這樣一個需求,在按住View時在View上繪製一些東西,比如圖案之類的,然後在手指鬆開時將繪製的東西清除掉
這時候就有兩種方法可以清屏
1.
clearPaint.setXfermode(new PorterDuffXfermode(PorterDuff.Mode.CLEAR)); canvas.drawPaint(clearPaint); clearPaint.setXfermode(new PorterDuffXfermode(PorterDuff.Mode.SRC));
2.
canvas.drawColor(0,PorterDuff.Mode.CLEAR);
然後我們發揮發現一個問題,此時畫布背景色變成了黑色,解決辦法,關閉硬件加速,在構造函數中加入以下代碼即可
setLayerType(LAYER_TYPE_HARDWARE,null);