2011-08-20 147 views
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,因爲我不需要在背景上重繪位圖,因爲位圖不會改變。但是,如果我不重繪位圖,背景保持黑色,位圖保留在背面。任何幫助?

回答