外汇期货喊单网站怎么做的,数字网站怎么建设,好看的电商网站模板下载,自建社区网站一、概念
DPI#xff1a;DPI是Dots Per Inch的缩写#xff0c;也就是“每英寸点数”#xff0c;打印机分辨率。这里所说的“点”#xff0c;在屏幕上并不是不变的#xff0c;并不是唯一对应屏幕上的像素点#xff0c;而是受到分辨率等因素的影响。这个点有可能是1个像素…一、概念
DPIDPI是Dots Per Inch的缩写也就是“每英寸点数”打印机分辨率。这里所说的“点”在屏幕上并不是不变的并不是唯一对应屏幕上的像素点而是受到分辨率等因素的影响。这个点有可能是1个像素也有可能是多个像素。一般是用于打印机的
PPI是 Pixel per inch每英寸像素数图片分辨率。PPI越高图片越细腻。 DIPDIP是指Density Independent Pixels可以翻译为密度无关像素。和px相比dip在不同密度的屏幕中实际显示比例将保持一致。根据规定一个dp相当于160dpi屏幕中的一个px。在320dpi的屏幕中一个dp相当于2个px。
dp等于dip。在Android开界面布局文件时dp是长度单位。
spscaled pixels(放大像素)与dp相似. 主要用于字体显示best for textsize。
px: pixels(像素). 不同设备显示效果相同一般我们HVGA代表320x480像素这个用的比较多。显示的风格不同就像网页在1280*800 中显示正常。1024*768 中显示乱掉。
Density密度是指屏幕里像素值浓度其计算方式为分辨率/屏幕尺寸。二、Android中对Density的特别设计
为了适配不同android设备的屏幕尺寸Android对屏幕密度做了重新的规定将密度Density与屏幕分辨率绑定起来给了固定的值。 屏幕 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默认的low120 Medium 160 High 240 三、Android中的计算关系 在android源码包TypedValue.java中我们看如下函数 该函数功能是把各单位换算为像素。 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;
} DENSITY密度的意思 metrics.density默认值为DENSITY_DEVICE / (float) DENSITY_DEFAULT; metrics.scaledDensity默认值为DENSITY_DEVICE / (float) DENSITY_DEFAULT; metrics.xdpi默认值为DENSITY_DEVICE; DENSITY_DEVICE为屏幕密度 DENSITY_DEFAULT默认值为160 --------------------------------------------- 从Android的源码得知 像素dp*屏幕密度/160 则 dp160*像素/屏幕密度 从上表可知Android规定分辨率320x480 的A屏幕密度为160dpi分辨率480*800的B屏幕密度为240dpi A宽dp160*320/160320 B宽db160*480/240320 由此可见Android里用dp单位1dp在320*480和480*800的分辨率的屏幕下是一样的显示效果是一样的