我有两个位图,我在oncreate()中创建它们。

Bitmap bmp1 = BitmapFactory.decodeResource(getResources(),id);
Bitmap bmp2 = BitmapFactory.decodeResource(getResources(),id);

bmp1和bmp2是相同的。我在应用程序中修改bmp2。工作完成后,我单击“清除”按钮。当我单击“清除”按钮时,我正试图将bmp1(清除图像)复制到bmp2(更改图像)。但我不想使用createBitmap()或copy()函数。因为这些是创建新位图对象。我只想使用我的两个位图(bmp1和bmp2)。如何将bmp1复制到bmp2?我搜索google,但每个人都用createBitmap()或copy()来完成。
谢谢。

最佳答案

我解决了我的问题
首先,我为bmp2创建了bmp1、bmp2和canvas:

bmp1 = BitmapFactory.decodeResource(cont.getResources(), R.drawable.image);
bmp2 = bmp1.copy(bmp1.getConfig(), true);
canvasBmp2 = new Canvas( bmp2 );

当我要将bmp1复制到bmp2时:
canvasBmp2.drawBitmap(bmp1, 0, 0, null);

@Override
protected void onDraw(Canvas canvas)
{
    canvas.drawBitmap(bmp2, 0, 0, null);
}

07-24 09:21