一、常用的单位:相对单位主要有:px、sp、dp
绝对单位主要有:pt、in、mm
二、单位应用总结:一般用相对单位,而不是绝对单位
1、字体的大小一般使用SP,用此单位的字体能够根据用户设置字体的大小而自动缩放
2、空间等相对距离一般使用dp(dip),随着密度变化,对应的像素数量也变化,但并没有直接的相对比例的变化。
3、px与实际像素有关,及与密度有关!dp和sp和实际像素没有关系,对于一定分辨率但不同密度的屏幕,px单位的应用可能会导致长度的相对比例的变化。
三、密度与分辨率:
密度值表示每英寸有多少个显示点,与分辨率是两个概念。
其屏幕密度标准是:HVGA屏density=160;QVGA屏density=120;WVGA屏density=240;WQVGA屏density=120
具体的应用运算关系:假设分辨率是 x*y, 密度为 d, 屏幕实际大小为 a*b那么关系为 x*y = d * a * b (约等于)
不同density下屏幕分辨率信息,以480dip*800dip的 WVGA(density=240)为例density=120时 屏幕实际分辨率为240px*400px (两个点对应一个分辨率)
四、对比总结:
1、在相同密度(即同一实体屏幕)不同分辨率的情况下,与实体密度无关的相对单位sp和dp显示正常
2、在相同分辨率不同密度的情况下,因为一般情况下,都用的标准密度,所以分析的意义不是很大
其他资料:
px:是屏幕的像素点
in:英寸
mm:毫米
pt:磅,1/72 英寸
dp:一个基于density的抽象单位,如果一个160dpi的屏幕,1dp=1px
dip:等同于dp
sp:同dp相似,但还会根据用户的字体大小偏好来缩放。
建议使用sp作为文本的单位,其它用dip
针对dip和px 的关系,做以下概述:
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标签的资源。
相关推荐
修改安卓手机密度的代码
在代码中获取屏幕密度等参数的例子。这是关于在代码中获取屏幕密度等参数的例子,例子也分析了px和dp转换的方法,也就是px = dp * (dpi / 160)。而且我们需要注意的是Android对屏幕密度是使用了归化。
获取手机屏幕大小,屏幕分辨率,屏幕密度,导航栏高度,标题栏高度
Android常用共通工具类,包括dp与px转换,获取屏幕密度,获取versionName和versionCode,获取网络连接状态等等。
gen_dpi 根据屏幕密度生成适配的px尺寸
使用CSS3-Media-Query技术适配Android平板屏幕分辨率和屏幕密度.docx
AppInfoManager.java获取软件信息和内存信息,其它的信息获取在InfoActivity.java
获取android手机的屏幕宽度,屏幕高度,屏幕密度density,font density,屏幕密度DPI
该项目的存在是为了减少处理Android屏幕密度的烦恼。 目标是与gradle无缝集成,以从输入的SVG图像集中为每个Android屏幕密度导出栅格化图像。 (将PNG / JPEG大小自动调整为Android屏幕密度是一个长期目标,但由于...
编码UTF-8;我们在ZOL上可以通过“参数”查看知名设备的信息,但如果客户寄给你一个他们自己定制的平板,通过“设置”也看不到你想要的信息, ...此Demo提供了获取设备的分辨率、屏幕尺寸和屏幕像素密度(PPL)的方式。
Android中屏幕密度和图片大小的关系详解 前言 Android中支持许多资源,包括图片(Bitmap),对应于bitmap的文件夹是drawable,除了drawable,还有drawable-ldpi、drawable-mdpi、drawable-hdpi、drawable-xhdpi、...
获取手机_平板等Android设备的屏幕信息 apk 代码 截图 android设备直接安装 包括图片素材存放目录 宽高像素dp 屏幕密度 屏幕dpi 屏幕长宽比 以及安卓各个密度屏幕的dpi dp_px换算 和代表分辨率.rar,太多无法一一验证...
android手机分辨率 密度 等各种信息 ... " 屏幕密度为(像素比例:0.75/1.0/1.5/2.0): " + density + " 屏幕密度DPI(每寸像素:120/160/240/320): " + densityDpi + "r ydpi: " + ydpi + " xdpi: " + xdpi ;
本篇文章是对android中的dip,dp,px,sp和屏幕密度进行了详细的分析介绍,需要的朋友参考下
修改density(屏幕密度,若每英寸有160像素点,该值就为1)、scaleDensity(字体缩放比例),densityDpi(屏幕上每英寸有多少像素点,如160)的值,就是修改系统内部对于目标尺寸而言的像素密度。 二、追根溯源 每个...
检查手机的屏幕大小和屏幕密度,可以更好的完成不同屏幕的适配!
android将实际的屏幕密度分为四个通用尺寸(low,medium,high,and extra high) 一般情况下的普通屏幕:ldpi是120dpi,mdpi是160dpi,hdpi是240dpi,xhdpi是320dpi 对于屏幕来说,dpi越大,屏幕的精细度越高,...
dp(dip): device independent pixels(设备独立像素). 不同设备有不同的显示...1dp=1sp=1px,但如果使用px作单位,如果屏幕大小不变(假设还是3.2寸),而屏幕密度变成了320。那么原来TextView的宽度 设成160px,在密
获取手机\平板等Android设备的屏幕信息 apk+源码+截图 android设备直接安装 包括图片素材存放目录 宽高像素dp 屏幕密度 屏幕dpi 屏幕长宽比 以及安卓各个密度屏幕的dpi dp/px换算 和代表分辨率