1

偶尔我会收到错误消息“位图大小超出 VM 预算”。当我一个接一个地打开 20 个活动时会发生这种情况,其中每个活动都包含 500x300 PNG 图片。当我使用 android:background="@drawable/xxxxxxxx" 在我的 XML 布局中实现图片时,我没有遇到问题。

当我在我的 Java 代码中实现图片时,首先发生了错误。

<ImageView
android:id="@+id/ImVpic"
android:layout_width="wrap_content"
android:layout_height="wrap_content"/>

ImageView pic;
pic = (ImageView)findViewById(R.id.ImVpic);
pic.setImageResource(R.drawable.picture);

我怎样才能摆脱这个错误?我的代码中缺少什么?我的意思是它确实有效,但有时它会抛出一个非常烦人的错误。

4

1 回答 1

0

这是您在 SO 上看到的非常常见的问题。加载图像时似乎可用内存不足。确保您没有为图像保留长时间的引用,这允许 dalvik 从未使用的图像(或)对象中回收内存。

于 2012-06-23T17:15:40.920 回答