简体   繁体   中英

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

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?

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

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM