问题描述
- ImageView bitmap size exceeds VM budget
-
我在一个activity中为一个ImageView设置了从asset中读取出来的图片,ImageView..setImageDrawable(Drawable.createFromStream(getResources()
.getAssets().open("xxx.png"), ""));
图片一般200-500k,第一次显示正常,在模拟器上backpress再进入这个activity时,上一句会出现异常bitmap size exceeds VM budget。
ImageView我声明为 成员变量。
在onDestroyView时,我从根view遍历,把所有view的background drawable调用了setCallback(null). ImageView获取了getDrawable()调用了setCallback(null),仍然会出现异常。如果我在获取的drawable为BitmapDrawable时调用recycle(),再次进入又会出现try to use recycled bitmap。
解决方案
建议对图片进行缩放处理。
时间: 2024-11-01 06:38:48