我有一个我正在创建的位图......
myBitmap=BitmapFactory.decodeResource(res, R.drawable.picture, options);
然后我使用Bitmap.createScaledBitmap
缩放它然后当我画它的时候我会重新着色它:
c.drawBitmap(myScaledBitmap, 0, 0, myPaint);
这很有效,但是当我实时重新着色时,性能会受到很大影响。
我现在要做的是在循环开始运行之前创建一个不同的颜色位图,我认为这将是一件非常简单的事情,但我无法解决它并且会欣赏任何指针。< / p>
唯一的另一种方法是让我真正创建不同的.png开头但这会有点痛苦所以必须有一种方法在代码中执行此操作?感谢。
答案 0 :(得分:0)
这不是太复杂。你有大部分。在循环之外,您几乎可以使用已有的代码。我认为这样的事情应该有效:
Bitmap coloredBitmap = Bitmap.createBitmap(myScaledBitmap.getWidth(), myScaledBitmap.getHeight(), Config.ARGB_8888);
Canvas canvas = new Canvas(coloredBitmap);
canvas.drawBitmap(myScaledBitmap, 0, 0, myPaint);
现在只需在循环中使用coloredBitmap
。