Android:使用 drawable 与 drawable-nodpi 文件夹时内存消耗存在巨大差异
Android: Huge difference in memory consumption when using drawable vs drawable-nodpi folders
我有使用 Android Studio 创建的基本 Android 应用程序,在 ImageView
中加载了单个图像,如下所示:
ImageView iv = (ImageView)findViewById(R.id.imageView);
iv.setScaleType(ImageView.ScaleType.CENTER_CROP);
iv.setImageResource(R.drawable.g01);
图像大小为 1280x853 pix
,没什么大的。当我将图像存储在 drawable
文件夹中时,应用程序消耗的运行时内存为 24.35 MB,而图像存储在 drawable-nodpi
文件夹中时为 11.85 MB。在分辨率为 1280x720 pix
的 xhdpi
设备上测试。
在我的真实应用程序中,75 MB 与 25 MB 的差异更大。
为什么不同?我认为 drawable
和 drawable-nodpi
文件夹基本相同并且用途相同?
Why the difference? I thought that drawable and drawable-nodpi folders
are basically the same and serve the same purpose?
不,他们不是。 drawable
根据设备的密度缩放其内容,drawable-nodpi
不会。在第一种情况下你会得到位图密度时间 width/height 原来的
我有使用 Android Studio 创建的基本 Android 应用程序,在 ImageView
中加载了单个图像,如下所示:
ImageView iv = (ImageView)findViewById(R.id.imageView);
iv.setScaleType(ImageView.ScaleType.CENTER_CROP);
iv.setImageResource(R.drawable.g01);
图像大小为 1280x853 pix
,没什么大的。当我将图像存储在 drawable
文件夹中时,应用程序消耗的运行时内存为 24.35 MB,而图像存储在 drawable-nodpi
文件夹中时为 11.85 MB。在分辨率为 1280x720 pix
的 xhdpi
设备上测试。
在我的真实应用程序中,75 MB 与 25 MB 的差异更大。
为什么不同?我认为 drawable
和 drawable-nodpi
文件夹基本相同并且用途相同?
Why the difference? I thought that drawable and drawable-nodpi folders are basically the same and serve the same purpose?
不,他们不是。 drawable
根据设备的密度缩放其内容,drawable-nodpi
不会。在第一种情况下你会得到位图密度时间 width/height 原来的