HVGA:Half-size VGA;即:VGA的一半,分辨率爲480×320;
QVGA:Quarter VGA;即:VGA的四分之一,分辨率爲320×240;
WVGA:Wide Video Graphics Array;即:擴大的VGA,分辨率爲800×480像素;
WQVGA:Wide Quarter VGA;即:擴大的QVGA,分辨率比QVGA高,比VGA低,一般是:400×240,480×272;
DisplayMetrics metrics)
{
switch (unit) {
case COMPLEX_UNIT_PX:
return value;
case COMPLEX_UNIT_DIP:
return value * metrics.density;
case COMPLEX_UNIT_SP:
return value * metrics.scaledDensity;
case COMPLEX_UNIT_PT:
return value * metrics.xdpi * (1.0f/72);
case COMPLEX_UNIT_IN:
return value * metrics.xdpi;
case COMPLEX_UNIT_MM:
return value * metrics.xdpi * (1.0f/25.4f);
}
return 0;
}
該函數功能:是把各單位換算爲像素。
metrics.density:默認值爲DENSITY_DEVICE / (float) DENSITY_DEFAULT;
metrics.scaledDensity:默認值爲DENSITY_DEVICE / (float) DENSITY_DEFAULT;
metrics.xdpi:默認值爲DENSITY_DEVICE;
DENSITY_DEVICE:爲屏幕密度
DENSITY_DEFAULT:默認值爲160
五.屏幕密度:
表示每英寸有多少個顯示點,與分辨率是兩個不同的概念。
Android主要有以下幾種屏:如下表
屏幕 Tyep |
寬度 Pixels |
高度 Pixels |
尺寸 Range(inches) |
屏幕密度 |
QVGA |
240 |
320 |
2.6-3.0 |
low |
WQVGA |
240 |
400 |
3.2-3.5 |
low |
FWQVGA |
240 |
432 |
3.5-3.8 |
low |
HVGA |
320 |
480 |
3.0-3.5 |
Medium |
WVGA |
480 |
800 |
3.3-4.0 |
High |
FWVGA |
480 |
854 |
3.5-4.0 |
High |
WVGA |
480 |
800 |
4.8-5.5 |
Medium |
FWVGA |
480 |
854 |
5.0-5.8 |
Medium |
備註 |
目前android默認的low=120 ;Medium =160; High = 240 |
綜上所述
據px = dip * density / 160,則當屏幕密度爲160時,px
= dip
根據 google 的建議,TextView 的字號最好使用 sp 做單位,而且查看TextView的源碼可知Android默認使用sp作爲字號單位。將dip作爲其他元素的單位。
iPhone:
iPhone 1G 320x480
iPhone 3G 320x480
iPhone 3GS 320x480
iPhone 4 640x960
iPhone 4S 640x960
iPhone 5 640x1136
iPhone 5S 640x1136
iPhone 5C 640x1136
iPhone 6 750x1334
iPhone 6 Plus 1080x1920 (開發應按照1242x2208適配)
iPod Touch:
iPod Touch 1G 320x480
iPod Touch 2G 320x480
iPod Touch 3G 320x480
iPod Touch 4G 640x960
iPod Touch 5G 640x1136
iPad:
iPad 1 1024x768
iPad 2 1024x768
The New iPad 2048x1536
iPad mini 1024x768
iPad 4 2048x1536
iPad Air 2048x1536
iPad mini 2 2048x1536
iPad Air 2 2048x1536
iPad mini 3 2048x1536