我不太确定有多少内存将分配给以下变量“位图”,
Bitmap bitmap = BitmapFactory.decodeResource(getResources(), R.mipmap.example);
bitmap = Bitmap.createScaledBitmap(bitmap, 100, 100, true);
比如说,原图的尺寸是1024*768,位图已经分配了一些内存。那么位图被缩放到100*100,分配给变量“位图”的内存会不会因为维度的变化而改变?
最佳答案
变量 只会占用少量内存(如果有的话)。最多几个字节。对象类型的变量仅使用足够的内存来存储指向对象的指针。
但是,变量指向的对象 可以占用任意数量的内存。 createScaledBitmap创建一个新的位图,因此在您的代码运行后,内存中可能会有两个位图。其中之一(原始的,较大的)但是不再有任何指向它的 Activity 引用(例如变量),因此它最终将被垃圾收集。
关于android - 分配给这个 Bitmap 的内存有多少?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30250413/