Android: Huge difference in memory consumption when using drawable vs drawable-nodpi folders

女生的网名这么多〃 提交于 2019-12-06 08:26:03

问题


I have basic Android application created with Android Studio with single image loaded in ImageView like this:

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

Image size is 1280x853 pix, nothing huge. When I store the image in drawable folder runtime memory consumed by app is 24.35 MB vs 11.85 MB when image is stored in drawable-nodpi folder. Tested on xhdpi device with resolution of 1280x720 pix.

In my real life app, difference is even greater 75 MB vs 25 MB.

Why the difference? I thought that drawable and drawable-nodpi folders are basically the same and serve the same purpose?


回答1:


Why the difference? I thought that drawable and drawable-nodpi folders are basically the same and serve the same purpose?

No they are not. drawable scales its content per the device's density, drawable-nodpi doesn't. In the first case you will get a bitmap density time width/height the original one



来源:https://stackoverflow.com/questions/28833473/android-huge-difference-in-memory-consumption-when-using-drawable-vs-drawable-n

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!