0

我正在扩展 ImageView 以显示图像。图像的输入流来自套接字以及它们的左上角坐标。

我能够显示图像的一部分,因为剩余的屏幕是白色的。我的问题是总画布被当前位图覆盖,并且以前的绘图被白屏擦除。

我搜索了解决方案,我发现有关画布的信息是“在调用 canvas.drawBitmap(bitmap,top,left,paint) 时绘制画布的每个像素”。

我需要更新图像(画布)的唯一脏部分而不更新整个画布。

请建议我如何更新屏幕(画布)的脏部分和以前的图纸不应该被删除。

感谢和问候

小型的。

4

1 回答 1

-1

你可以用已有的东西制作画布,而不是在上面创建一个空白,然后在上面画画。这是如何实现它的示例。

yourImageView.setDrawingCacheEnabled(true);
Bitmap bm = yourImageView.getDrawingCache();
final Canvas canvas = new Canvas(bm);

然后你有一个画布,其中包含以前在 ImageView 中的任何内容,你可以更新你想要的任何部分。为此,我建议您查看PorterDuff 模式

于 2012-11-19T12:07:33.387 回答