Android中的长度单位详解(dp、sp、px、in、pt、mm)

看到有很多网友不太理解dp、sp和px的区别:现在这里介绍一下dp和sp。dp也就是dip。这个和sp基本类似。如果设置表示长度、高度等属性时可以使用dp 或sp。但如果设置字体,需要使用sp。dp是与密度无关,sp除了与密度无关外,还与scale无关。如果屏幕密度为160,这时dp和sp和px是一样的。1dp=1sp=1px,但如果使用px作单位,如果屏幕大小不变(假设还是3.2寸),而屏幕密度变成了320。那么原来TextView的宽度设成160px,在密度为320的3.2寸屏幕里看要比在密度为160的3.2寸屏幕上看短了一半。但如果设置成160dp或160sp的话。系统会自动将width属性值设置成320px的。也就是160 * 320 / 160。其中320 / 160可称为密度比例因子。也就是说,如果使用dp和sp,系统会根据屏幕密度的变化自动进行转换。

下面看一下其他单位的含义

px:表示屏幕实际的象素。例如,320*480的屏幕在横向有320个象素,在纵向有480个象素。

in:表示英寸,是屏幕的物理尺寸。每英寸等于2.54厘米。例如,形容手机屏幕大小,经常说,3.2(英)寸、3.5(英)寸、4(英)寸就是指这个单位。这些尺寸是屏幕的对角线长度。如果手机的屏幕是3.2英寸,表示手机的屏幕(可视区域)对角线长度是3.2*2.54 = 8.128厘米。读者可以去量一量自己的手机屏幕,看和实际的尺寸是否一致。

mm:表示毫米,是屏幕的物理尺寸。

pt:表示一个点,是屏幕的物理尺寸。大小为1英寸的1/72。

原帖地址http://www.ophonesdn.com/forum/thread-1946-2-1.html

px(Pixels ,像素):对应屏幕上的实际像素点。例如,320*480的屏幕在横向有320个象素,在纵向有480个象素。

in(Inches ,英寸):屏幕物理长度单位。每英寸等于2.54厘米。例如,形容手机屏幕大小,经常说,3.2(英)寸、3.5(英)寸、4(英)寸就是指这个单位。这些尺寸是屏幕的对角线长度。如果手机的屏幕是3.2英寸,表示手机的屏幕(可视区域)对角线长度是3.2*2.54 = 8.128厘米。读者可以去量一量自己的手机屏幕,看和实际的尺寸是否一致。

mm(Millimeters ,毫米):屏幕物理长度单位。

pt(Points ,磅):屏幕物理长度单位, 表示一个点,是屏幕的物理尺寸。大小为1英寸的1/72。

dp(与密度无关的像素):逻辑长度单位,在 160 dpi 屏幕上,1dp=1px=1/160英寸。随着密度变化,对应的像素数量也变化,但并没有直接的变化比例。 
dip:与dp相同,多用于Google示例中。 
sp(与密度和字体缩放度无关的像素):与dp类似,但是可以根据用户的字体大小首选项进行缩放。

尽量使用dp作为空间大小单位,sp作为和文字相关大小单位

Android中的长度单位详解(dp、sp、px、in、pt、mm)相关推荐

  1. android中的长度单位介绍(dp,sp,px,in,pt,mm)

    作为小白学习了一段时间的android,在学习过程中却一直有个疑问,在设置控件大小时面对这几个单位却不知如何选择,查找相关资料后了解了其含义,今天来分享下 dp或dip(device independ ...

  2. Android中的长度单位详解

    http://blog.csdn.net/zuolongsnail/article/details/6397768 in(英寸)长度单位(基本用不到) mm(毫米)长度单位(基本用不到) pt(poi ...

  3. Android中,长度单位详解(dp、sp、px、in、pt、mm)具体解释与换算(1)

    在写代码或者开发过程中有很多人不太理解 dp.sp 和 px 的区别:现在这里介绍一下 dp 和sp.dp 也就是 dip.这个和 sp 基本类似.如果设置表示长度.高度等属 性时可以使用 dp 或 ...

  4. android调webview的方法,Android中的WebView详解

    Android中的WebView详解 WebView详解 基本用法 布局文件配置WebView android:id="@+id/wv_news_detail" android:l ...

  5. Android 中malloc_debug 原理详解

    版本基于:Android R 关联博文: Android 中malloc_debug 使用详解 0. 前言 最近上项目中遇到一个native 可能内存泄漏的问题,曾考虑使用HWASAN,但这个工具是针 ...

  6. Android中mesure过程详解 (结合Android 4.0.4 最新源码)

    如何遍历并绘制View树?之前的文章Android中invalidate() 函数详解(结合Android 4.0.4 最新源码)中提到invalidate()最后会发起一个View树遍历的请求,并通 ...

  7. Android中layout过程详解 (结合Android 4.0.4 最新源码)

    上一篇文章Android中mesure过程详解 (结合Android 4.0.4 最新源码)介绍了View树的measure过程,相对与measure过程,本文介绍的layout过程要简单多了,正如l ...

  8. android中的尺寸单位是什么,Android中各种长度尺寸单位(dp,dip,px,sp,pt)的区别

    dip : device independent pixels(设备独立像素). 不同设备有不同的显示效果,这个和设备硬件有关,一般我们为了支持WVGA.HVGA和 QVGA 推荐使用这个,不依赖像素 ...

  9. Android中shape属性详解

    一.简单使用 刚开始,就先不讲一堆标签的意义及用法,先简单看看shape标签怎么用. 1.新建shape文件 首先在res/drawable文件夹下,新建一个文件,命名为:shape_radius.x ...

  10. 【Android】 Android中Log调试详解

    LOG类: public final class Log extends Object java.lang.Object   android.util.Log Constants int ASSERT ...

最新文章

  1. 微软的PivotViewer控件编程续
  2. jquery ajax POST/GET 请求至 ASP.NET WebAPI
  3. inline-block 和 float 的区别
  4. 深入浅出MongoDB(二)概述
  5. consul运维入门
  6. Linux(Ubuntu)使用日记------自定义命令的使用
  7. 双目测距(二)--双目标定与矫正
  8. onActivityResult在setResult之前被调用
  9. DSP实验二c语言程序,实验1.2:编写一个以C语言为基础的DSP程序
  10. H3C认证云计算工程师
  11. DLL load failed: %1 不是有效的 Win32 应用程序的解决办法
  12. 如何快速使计算机锁屏,电脑如何一键锁屏?有急事时如何快速锁屏?[多图]
  13. 迎新:Apache IoTDB 喜迎 2 位新 Committer
  14. 题目 1536: 最长单词
  15. SQL Server ansi_null_default | ansi_null_dflt_on
  16. 计算机excel基础知识教程,EXCEL基本操作技巧 一
  17. sql2java-excel(一):基于apache poi实现数据库表的导出及支持spring web
  18. PHP登陆页面完整代码
  19. glog使用-查看LOG
  20. 单选框,下拉框,复选框 的回显

热门文章

  1. 我的世界空岛生存服务器制作,我的世界Wishing服务器-RPG丨空岛丨生存丨[1.12.2-1.16.1]...
  2. 个人理财通Android手机测试,基于Android的个人理财管理系统
  3. oracle表空间权限赋予,Oracle 创建用户、表空间以及授予权限
  4. LaTex 插入图像
  5. 【Android】- 百度导航引擎初始化失败
  6. Showwindow及参数介绍
  7. ArcGIS模拟3D洪水
  8. 玩平衡小车系列—TB6612FNG与直流电机控制教程
  9. python安装mysql-python报错解决方法
  10. lisp 焊接符号标注_焊接符号标注及表示方法-详解aws焊接符号、钢结构焊接符号含义大全...