Tag: 超出内存的

在将图像加载到Bitmap对象时出现内存不足的问题

我有一个列表视图与每行上的几个图像button。 当您单击列表行时,它将启动一个新的活动。 由于相机布局的问题,我不得不build立自己的选项卡。 为结果启动的活动是一张地图。 如果我点击我的button启动图像预览(从SD卡加载图像),应用程序从活动返回到listview活动的结果处理程序重新启动我的新活动,这不过是一个图像小部件。 列表视图上的图像预览正在使用游标和ListAdapter 。 这使得它非常简单,但我不知道如何可以放置一个resize的图像(即小图像大小不是像素的图像button的src ,所以我只是调整了手机相机的图像。 问题是,当它尝试返回并重新启动第二个活动时,出现内存不足错误。 有没有一种方法,我可以轻松地逐行build立列表适配器,在哪里我可以在飞行( 位智者 )resize? 这将是更可取的,因为我也需要对每一行中的部件/元素的属性进行一些更改,因为焦点问题,我无法select带触摸屏的行。 ( 我可以使用滚球。 ) 我知道我可以做一个带外resize和保存我的图像,但这不是我想要做的,但一些示例代码将是很好的。 只要我在列表视图中禁用图像,它再次正常工作。 仅供参考:我是这么做的: String[] from = new String[] { DBHelper.KEY_BUSINESSNAME,DBHelper.KEY_ADDRESS,DBHelper.KEY_CITY,DBHelper.KEY_GPSLONG,DBHelper.KEY_GPSLAT,DBHelper.KEY_IMAGEFILENAME + ""}; int[] to = new int[] {R.id.businessname,R.id.address,R.id.city,R.id.gpslong,R.id.gpslat,R.id.imagefilename }; notes = new SimpleCursorAdapter(this, R.layout.notes_row, c, from, to); setListAdapter(notes); 其中R.id.imagefilename是一个ButtonImage 。 这是我的LogCat: 01-25 05:05:49.877: ERROR/dalvikvm-heap(3896): 6291456-byte external allocation too […]