0

我读到了裁剪位图的简单方法——当裁剪不那么频繁时,它工作得很好:

Bitmap.createBitmap(src, x, y, width, height);

但在我的应用程序中,我在画布上绘制位图,我希望它不会超出范围

描述

用户可以移动和缩放位图。现在我正在使用我在上面描述的方法onTouchEvent,但是:

  1. 它不够平滑(但它有效)

  2. 它在每个“移动”事件中重新创建一个新的位图。我认为这是非常无效的。没有内存消耗,因为我回收了以前的位图,但它看起来仍然很糟糕。

我的问题是:在画布上绘图时,有什么方法可以更有效地裁剪位图?

4

1 回答 1

0

我已经决定对每个都使用自己的而不是在一个视图上将它们一起绘制要好得多。ImageViewBitmap

在这种情况下,操作系统会为您裁剪所有超出范围的内容,您无需自己裁剪位图。它显着提高了性能。

于 2012-08-12T15:44:11.533 回答