Android:使用drawable vs drawable-nodpi文件夹时内存消耗差异很大

我有使用Android Studio创建的基本Android应用程序,在ImageView加载了单个图像,如下所示:

 ImageView iv = (ImageView)findViewById(R.id.imageView); iv.setScaleType(ImageView.ScaleType.CENTER_CROP); iv.setImageResource(R.drawable.g01); 

图像大小为1280x853 pix ,没什么1280x853 pix 。 当我将图像存储在drawable文件夹中时,运行时使用的内存为24.35 MB,而当图像存储在drawable-nodpi文件夹中时为11.85 MB。 在xhdpi设备上测试,分辨率为1280x720 pix

在我的真实应用程序中,差异甚至更大75 MB与25 MB。

为什么不同? 我认为drawabledrawable-nodpi文件夹基本相同并且用于相同的目的?

为什么不同? 我认为drawable和drawable-nodpi文件夹基本相同并且用于相同的目的?

不,他们不是。 drawable按照设备的密度缩放其内容, drawable-nodpi不。 在第一种情况下,您将获得原始位图密度时间宽度/高度