我有九张要在活动开始时加载的图片,并且遇到了 OutOfMemory 异常的问题。起初我直接将它们加载到 xml 设置它的 src。所以在获得 java.lang.OutOfMemory 之后,我意识到也许我需要更有效地加载图片,我创建了这个循环以在活动开始时执行:
for(int i=0;i<9;i++){
String background = "background"+(i+1);
int idDrawable = getResources().getIdentifier(background, "drawable", getPackageName());
int idPicture = getResources().getIdentifier(background, "id", getPackageName());
BitmapFactory.Options options = new BitmapFactory.Options();
options.inJustDecodeBounds = true;
BitmapFactory.decodeResource(getResources(), idDrawable, options);
options.inJustDecodeBounds = false;
ImageView image = (ImageView) findViewById(idPicture);
image.setImageBitmap(BitmapFactory.decodeResource(getResources(), idDrawable, options));
}
但是我仍然有同样的 OutOfMemory 问题,关于我做错了什么有什么想法吗?