2
我有2個ImageViews,1個是Canvas,另一個是ImageBackground。透過BitMap製作透明畫布
ImageViews具有屏幕大小。
當我觸摸屏幕,我需要重新繪製像例如畫布:
private void reDraw() {
Display display = getWindowManager().getDefaultDisplay();
bmOverlay = Bitmap.createBitmap(display.getWidth(), display.getHeight(), oBitmap.getConfig());
oCanvas = new Canvas(bmOverlay);
//I need to erase this line
oCanvas.drawBitmap(bmpBackGround, new Matrix(), null);
//this code paint some bitmaps on the canvas
for (ColorBall ball : colorballs) {
oCanvas.drawBitmap(ball.getBitmap(), ball.getX(), ball.getY(), null);
}
//set the canvas on the image view
getImageView2().setImageBitmap(bmOverlay);
}
但是,在這個例子中,我重繪位圖,當我觸摸屏幕。我需要重繪一個透明的Canvas,因爲我不需要在背景上重繪位圖,因爲位圖不會改變。但是,如果我不重繪位圖,背景保持黑色,位圖保留在背面。任何幫助?
但另一方面,我不認爲每次都會繪製背景圖像。刷新屏幕時始終會繪製它。 – Petrus