2011-08-20 142 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,因为我不需要在背景上重绘位图,因为位图不会改变。但是,如果我不重绘位图,背景保持黑色,位图保留在背面。任何帮助?

回答