Android多分辨率适配

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. You probably don't need to worry about xxhdpi either (although it never hurts, and at least the launcher icon should be provided at xxhdpi), and xxxhdpi is just a constant in the source code right now (no devices use it, nor do I expect any to for a while, if ever), so it's safe to ignore as well.

What this means is if you're doing a 48dip image and plan to support up to xhdpi resolution, you should start with a 96px image (144px if you want native assets for xxhdpi) 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.)

扫描二维码关注公众号,回复: 627554 查看本文章

For reference, the pixel densities for these are:

ldpi  | mdpi  | tvdpi  | hdpi  | xhdpi  | xxhdpi  | xxxhdpi

120   | 160   | 213    | 240   | 320    | 480     | 640

猜你喜欢

转载自vvlavida.iteye.com/blog/1974068