一、 概述
dip: device independent pixels(设备独立像素). 不同设备有不同的显示效果,这个和设备硬件有关,一般我们为了支持WVGA、HVGA和QVGA 推荐使用这个,不依赖像素。 好了,入正题吧,先说说px,px就是像素,如果用px,就会用实际像素画,比个如吧,用画一条长度为240px的横线,在480宽的模拟器上看就是一半的屏宽,而在320宽的模拟器上看就是2/3的屏宽了。 而dip,就是把屏幕的高分成480分,宽分成320分。比如你做一条160dip的横线,无论你在320还480的模拟器上,都是一半屏的长度。
px (pixels)像素 -- 一般我们HVGA代表320x480像素,这个用的比较多。
dip或dp (device independent pixels)设备独立像素 -- 这个和设备硬件有关,一般我们为了支持WVGA、HVGA和QVGA cwj推荐使用这个,不依赖像素。
sp (scaled pixels — best for text size)放大像素-- 主要处理字体的大小。
下面的几个是不常用的,大家也知道这里不再过多的赘述。
in (inches)英寸
mm (millimeters)毫米
pt (points)点
android:numColumns="auto_fit" ,GridView的列数设置为自动
android:columnWidth="90dp",每列的宽度,也就是Item的宽度
android:stretchMode="columnWidth",缩放与列宽大小同步
android:verticalSpacing="10dp",两行之间的边距,如:行一(NO.0~NO.2)与行二(NO.3~NO.5)间距为10dp
android:horizontalSpacing="10dp",两列之间的边距。
二、 详解
sp 由于是放大像素,主要是用于字体显示,由此根据 google 的建议, TextView 的字体大小最好用 sp 做单位,而且查看 TextView 的源码可知 Android 默认使用水平作为字号单位。
在 Android 中最常用到的还是 px 和 dip 。但是这两个之间到底有什么区别呢?
在 HVGA 屏 density=160 ; QVGA 屏 density=120 ; WVGA 屏 density=240 ; WQVGA 屏 density=120 density 值 表示每英寸有多少个 显 示点,与分辨率是两个概念 。不同 density 下 屏幕 分辨率信息,以480dip*800dip 的 WVGA(density=240) 为 例。
density=120 时 屏幕 实际 分辨率 为 240px*400px (两个点 对应 一个分辨率)
状 态 栏 和 标题栏 高各 19px 或者 25dip
横屏是屏幕 宽 度 400px 或者 800dip, 工作区域高度 211px 或者 480dip
竖 屏 时 屏幕 宽 度 240px 或者 480dip, 工作区域高度 381px 或者 775dip
density=160 时 屏幕 实际 分辨率 为 320px*533px ( 3 个点 对应 两个分辨率)
状 态栏 和 标题栏 高个 25px 或者 25dip
横屏是屏幕 宽 度 533px 或者 800dip, 工作区域高度 295px 或者 480dip
竖 屏 时 屏幕 宽 度 320px 或者 480dip, 工作区域高度 508px 或者 775dip
density=240 时 屏幕 实际 分辨率 为 480px*800px (一个点 对 于一个分辨率)
状 态栏 和 标题栏 高个 38px 或者 25dip
横屏是屏幕 宽 度 800px 或者 800dip, 工作区域高度 442px 或者 480dip
竖 屏 时 屏幕 宽 度 480px 或者 480dip, 工作区域高度 762px 或者 775dip
apk 的 资 源 包中,当屏幕 density=240 时 使用 hdpi 标签 的 资 源
当屏幕 density=160 时 ,使用 mdpi 标签 的 资 源
当屏幕 density=120 时 ,使用 ldpi 标签 的 资 源。
不加任何 标签 的 资 源是各种分辨率情况下共用的 。
分享到:
相关推荐
dip dp px sp区别 dip dp px sp区别 dip dp px sp区别
NULL 博文链接:https://1307111376.iteye.com/blog/1986752
简单的比较android各个单位的小程序
描述android的dip dp px dp等单位及其转换关系
Android中显示单位px和dip以及sp的区别
Android的计量单位px,in,mm,pt,dp,dip,sp Android的计量单位px,in,mm,pt,dp,dip,sp
在屏幕密度为160的显示屏上,1dip=1px,有时候可能你的屏幕分辨率很大如480*800,但是屏幕密度没有正确设置比如说还是160,那么这个时候凡是使用dip的都会显示异常,基本都是显示过小。 dip的换算: dip(value)=...
本篇文章是对Android中dip、dp、sp、pt和px的区别进行了详细的分析介绍,需要的朋友参考下
本篇文章是对Android中dip,px,pt,sp的区别进行了详细的分析介绍,需要的朋友参考下
android sp dp px dip pt in mm 等单位
从一开始写Android程序,就被告知这些常识 一、dp(或者dip device independent pixels) 一种基于屏幕密度的抽象单位。在每英寸160点的显示器上,1dp=1px。不同设备有不同的显示效果,这个和设备硬件有关。 二、sp...
Android开发中的常用尺寸单位有如下几种: dp (dip) px pt inch sp 算不知道确切含义,相信对于以上这几种尺寸单位大家也都比较脸熟,这里先让我们重新认识一下它们: dp (dip): 即设备无关像素(device ...
android:width设置文本区域的宽度,支持度量单位:px(像素)/dp/sp/in/mm(毫米),与layout_width的区别看这里。 android:maxWidth设置文本区域的最大宽度 android:minWidth设置文本区域的最小宽度 android...
px (pixels)像素 dip (device independent pixels)设备独立像素 sp (scaled pixels — best for text size)放大像素--对文本大小最好 pt (points)点 in (inches)英寸 mm (millimeters)毫米
dp也就是dip,这个和sp基本类似。如果设置表示长度、高度等属性时可以使用dp 或sp。但如果设置字体,需要使用sp。dp是与密度无关,sp除了与密度无关外,还与scale无关。如果屏幕密度为160,这时dp和sp和px是一 样的...
android:textSize="15sp" /> </LinearLayout>Activity:ShadowViewHelper.bindShadowHelper( new ShadowProperty() .setShadowColor(0x77000000) .setShadowDy(ABTextUtil.dip2px(context, 0.5f)) ....