Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/213.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Android预蜂窝位图管理_Android_Memory_Bitmap - Fatal编程技术网

Android预蜂窝位图管理

Android预蜂窝位图管理,android,memory,bitmap,Android,Memory,Bitmap,对于我的应用程序,我需要加载一个位图,它有时可能非常大。即使在galaxy S2这样的设备上,我也能避免内存错误。我四处搜索,发现我需要回收位图 之前,我使用BitmapFactory加载位图,创建一个新的缩放位图,并创建一个可在一行中绘制的bitmapdrawable。通过这样做,我是否将两个位图加载到内存中?我是否应该创建初始位图,然后在创建缩放位图后将其回收 如果活动将频繁启动,我应该将位图加载到静态字段一次,还是应该每次循环并重新创建 谢谢将流程分为多个步骤。如果根据可用屏幕空间测量位图

对于我的应用程序,我需要加载一个位图,它有时可能非常大。即使在galaxy S2这样的设备上,我也能避免内存错误。我四处搜索,发现我需要回收位图

之前,我使用BitmapFactory加载位图,创建一个新的缩放位图,并创建一个可在一行中绘制的bitmapdrawable。通过这样做,我是否将两个位图加载到内存中?我是否应该创建初始位图,然后在创建缩放位图后将其回收

如果活动将频繁启动,我应该将位图加载到静态字段一次,还是应该每次循环并重新创建


谢谢

将流程分为多个步骤。如果根据可用屏幕空间测量位图,然后加载缩放位图,则可以使用BitmapFactory.Options.inJustDecodeBounds执行第一步,而无需将位图加载到内存中。这将为您提供一个没有像素数据但具有宽度和高度属性的位图对象。然后使用BitmapFactory.Options.inSampleSize对缩放后的位图进行解码

用谷歌搜索这些术语,你会发现大量的示例代码就是这样做的。是的,当你完成位图时,别忘了回收