在我的项目中,我正在从文件夹 drawable-hdpi 动态加载图像,ImageSwitcher
如下所示:
int[] images = new int[2];
logoImage = (ImageSwitcher) findViewById(R.id.logo_image);
images[0] = getResources().getIdentifier(ej.getImagemResource(), "drawable", getPackageName());
images[1] = getResources().getIdentifier(ej.getImagemResolvidaResource(), "drawable", getPackageName());
//...
logoImage.setImageResource(images[0]);
但是对于设计问题,因为它将像 60000 幅小图像,每幅 300 x 300 像素,我决定将它们全部放入 assets 文件夹并开始加载它们,如下所示:
Drawable[] images = new Drawable[2];
images[0] = Drawable.createFromStream(getAssets().open(ej.getImagemResource() + ".png"), null);
images[1] = Drawable.createFromStream(getAssets().open(ej.getImagemResolvidaResource() + ".png"), null);
//...
问题在于,在第二种方式中,图像大小的显示方式因设备密度而异(我猜),但是当图像进入 drawable-hdpi 文件夹时,它们在任何密度下都显示得很好。
我该如何解决这个问题?或者将 60000 张图像放入 drawable-hdpi 文件夹是否有问题?哪种方法是“正确”的?
提前致谢