我正在用Java创建这个Android项目。但是,我想知道带有某些Bitmap方法的引用将走多远。
我有一个原始的位图,就像:
Bitmap originalBitmap = BitmapFactory.decodeResource(resources, bitmapID);
然后将其发送到基本类的构造函数中的对象:
class Test
{
Bitmap memberBitmap;
Test(Bitmap b)
{
memberBitmap = b;
}
}
到目前为止,我知道memberBitmap仍然是对originalBitmap的引用。但是我想做的基本上是使用以下方法调整此位图的大小:
memberBitmap = Bitmap.createScaledBitmap(memberBitmap, newWidth, newHeight, filter);
我现在是否已将新的位图存储到内存中或更改了originalBitmap?
如果是这样,那么我创建了一个新的位图,是否需要进行任何更改以使其更新originalBitmap?
喜欢:
memberBitmap.createScaledBitmap(memberBitmap, newWidth, newHeight, filter);
最佳答案
借助该API的声音,它可能正在内存中创建新的位图。您可以通过在构造函数运行后在两个对象上打印出toString()
并检查它们的内存位置是否相同来进行检查。
对于第二个问题:将originalBitmap
更改为对新的Bitmap
的引用。