Android 密度 DisplayMetrics? 提供三种 密度
DENSITY_LOW?? 最小 密度? 对应 文件夹 ldpi 是 120
DENSITY_MEDIUM 适中 密度 对应 文件夹 mdpi是160
DENSITY_HIGH?? 最大 密度 对应 文件夹 hdpi是240
xhdpi是320 (在Android 2.2 源码中未找到该属性)
默认 密度为 DENSITY_MEDIUM
设图标原尺寸为 x,y.图标取出文件夹时的尺寸为,Rx,Ry.
具体公式是:
density 驱动的密度
Rx = x * (density/ density(文件夹对应的dpi))
Ry = y * (density / density(文件夹对应的dpi))
eg:
现在 我有一张 18px * 18px 的图片
我的手机驱动密度为? 240
因为:ldpi 的 density 为 120
所以:Rx = 18 * (240 / 120) Rx = 32px
????? Ry = 18 * (240 / 120) Rx = 32px
又因为: hdpi 的 density 为240
所以:Rx = 18 * (240 / 240) = 18px
????? Ry = 18 * (240 / 240) = 18px
依次类推
mdpi 和 xhdpi 都能算出来了.
附带一个网站:(计算不同 密度的 实际大小)
http://coh.io/adpi/
?
常规的我们可能只考虑QVGA,HVGA,WVGA,FWVGA和DVGA,但是抛去了手机不谈,可能平板使用类似 WSVGA的1024x576以及WXGA的1280x768等等。
QVGA = 320 * 240;
WQVGA = 320 * 480;
WQVGA2 = 400 * 240;
WQVGA3 = 432 * 240;
HVGA = 480 * 320;
VGA = 640 * 480;
WVGA = 800 * 480;
WVGA2 = 768 * 480;
FWVGA = 854 * 480;
DVGA = 960 * 640;
PAL = 576 * 520;
NTSC = 486 * 440;
SVGA = 800 * 600;
WSVGA = 1024 * 576;
XGA = 1024 * 768;
XGAPLUS = 1152 * 864;
HD720 = 1280 * 720;
WXGA = 1280 * 768;
WXGA2 = 1280 * 800;
WXGA3 = 1280 * 854;
SXGA = 1280 * 1024;
WXGA4 = 1366 * 768;
SXGAMINUS = 1280 * 960;
SXGAPLUS = 1400 * 1050;
WXGAPLUS = 1440 * 900;
HD900 = 1600 * 900;
WSXGA = 1600 * 1024;
WSXGAPLUS = 1680 * 1050;
UXGA = 1600 * 1200;
HD1080 = 1920 * 1080;
QWXGA = 2048 * 1152;
WUXGA = 1920 * 1200;
TXGA = 1920 * 1400;
QXGA = 2048 * 1536;
WQHD = 2560 * 1440;
WQXGA = 2560 * 1600;
QSXGA = 2560 * 2048;
QSXGAPLUS = 2800 * 2100;
WQSXGA = 3200 * 2048;
QUXGA = 3200 * 2400;
QFHD = 3840 * 2160;
WQUXGA = 3840 * 2400;
HD4K = 4096 * 2304;
HXGA = 4096 * 3072;
WHXGA = 5120 * 3200;
HSXGA = 5120 * 4096;
WHSXGA = 6400 * 4096;
HUXGA = 6400 * 4800;
SHV = 7680 * 4320;
WHUXGA = 7680 * 4800;
对于Android游戏中适应高分辨率的平板而言,资源可以考虑一个强制的绝对布局保证全屏显示,而手机上的多种分辨率使用相对布局更为合理些
?
?
?
?