About Android image and asset sizes
android, android-image, android-resources, android-screen-support
Solution
`mdpi` is the reference density -- that is, 1 px on an `mdpi` display is equal to 1 dip. The ratio for asset scaling is:
ldpi | mdpi | tvdpi | hdpi | xhdpi | xxhdpi | xxxhdpi
0.75 | 1 | 1.33 | 1.5 | 2 | 3 | 4
Although you don't really need to worry about `tvdpi` unless you're developing specifically for Google TV or the original Nexus 7 -- but even Google recommends simply using `hdpi` assets.
What this means is if you're doing a 48dip image and plan to support up to `xxhdpi resolution`, you should start with a 144px image (192px if you want native assets for xxxhdpi) and make the following images for the densities:
ldpi | mdpi | tvdpi | hdpi | xhdpi | xxhdpi | xxxhdpi
36 x 36 | 48 x 48 | 64 x 64 | 72 x 72 | 96 x 96 | 144 x 144 | 192 x 192
And these should display at roughly the same size on any device, provided you've placed these in density-specific folders (e.g. `drawable-xhdpi`, `drawable-hdpi`, etc.)
For reference, the pixel densities for these are:
ldpi | mdpi | tvdpi | hdpi | xhdpi | xxhdpi | xxxhdpi
120 | 160 | 213 | 240 | 320 | 480 | 640
Problem
I need to clarify some doubt about the image assets for my app, if I specify in an xml file that the height of something [image view] is 50 dip height which type of screen should i choose from the resources folder? ``` drawable, hdpi, ldpi, mdpi, xhdpi, ``` to have the 50 px height image, and what is the percentage for bigger, smaller size images compared to the base image, like in iOS, @2x, is literally 2 times the size of the image, and you say programatically the normal size, thanks!