在写代码或者开发过程中有很多人不太理解 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://blog.csdn.net/zeng622peng/article/details/34434347#comments

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

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

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

  2. android中getSystemService详解

    原文地址:android中getSystemService详解作者:邹斌 http://blog.sina.com.cn/s/blog_71d1e4fc0100o8qr.html http://blo ...

  3. Android:长度单位详解(px、dp、sp)

    长度单位 1.重要概念 1.1 屏幕尺寸 1.2 屏幕分辨率 1.3 屏幕像素密度 1.4 屏幕尺寸.分辨率.像素密度三者关系 2.六种单位介绍 2.1.dp和px的换算 2.2.在代码中转换单位 2 ...

  4. Android中menu详解(转)

    Android中菜单的使用时非常频繁的,能够达到很好的使用效果,其实他的实现方法非常简单,下面为大家讲解,首先看图: JAVA代码: package com.smart; import android ...

  5. Android中Context详解

    给大家介绍下我们在应用开发中最熟悉而陌生的朋友-----Context类 ,说它熟悉,是应为我们在开发中时刻的在与它打交道,例如:Service.BroadcastReceiver.Activity等 ...

  6. android广播intent原理,Android中BroadcastReceiver详解

    BroadcastReceiver是什么? Android app可以发送广播也可以接收系统或者其它app发送的广播,是发送/订阅的设计模式.这些广播被发送当重要的事件发生的时候.例如,安卓系统发送广 ...

  7. android 静态注册wifi广播,Android中BroadcastReceiver详解

    BroadcastReceiver是什么? Android app可以发送广播也可以接收系统或者其它app发送的广播,是发送/订阅的设计模式.这些广播被发送当重要的事件发生的时候.例如,安卓系统发送广 ...

  8. Android中LaunchMode详解

    越是做的时间越长,基础知识就忘的越干净,最近做一个项目中,发现启动的几个Activity居然重叠了,我ri--,再不回忆一下就要退出Android界了. 概念解释 Task Task叫做任务,这个简单 ...

  9. android asynctask 参数,Android中AsyncTask详解

    定义 AsyncTask是一个抽象类,在使用时需要继承该类,实现其抽象方法protected abstract Result doInBackground(Params... params).其主要作 ...

  10. [content-description] find_element_by_accessibility_id 在 android 中的详解

    出处:http://testerhome.com/topics/1034 最近 Appium 引入了一个新的 find element 方法:python client 为例 def find_ele ...

最新文章

  1. onKeyPress与。 onKeyUp和onKeyDown
  2. SQL用了Union后的排序问题
  3. 29-分数求模(逆元)
  4. 《Redis 设计与实现》读书笔记-Redis 对象
  5. redis和memcached缓存
  6. sql server死锁_如何解决SQL Server中的死锁
  7. android debug bridge tools_飞凌干货丨Android 应用程序如何获取system权限
  8. 如何重置/删除chrome的输入突出显示/焦点边框? [重复]
  9. android无法创建AVD了?
  10. stm32如何执行软复位_stm32f7软件复位 stm32f0 软件复位
  11. java判断三个数字范围是否有交集_Python基础1之数字
  12. 设置电脑的保护色(绿豆沙色)
  13. Nuxt.js mini聊天室代码
  14. Google ZXing系列讲解(二)——生成WIFi二维码
  15. CoAP协议的常用开源代码实现
  16. 2022年全网最全的Oracle数据库技术附练习题以及答案 循序渐进
  17. 本地项目转git项目的详细操作方法
  18. python初学者游戏开发团队
  19. 从零开始创建一个uni-app项目
  20. Windows下Scala+Spark+IDEA+Hadoop环境搭建

热门文章

  1. 我怎样从珍爱网拿回18800会员费:交友平台相亲不靠谱
  2. Roy Li:币市里,我相信社区的力量和草根的崛起
  3. PDF怎么转图片?快把这些方法收好
  4. android 手机壁纸源码,Android设置手机壁纸-源码(WallPaper)
  5. flutter doctor --android-licenses命令之后出现JAVA_HOME错误
  6. App Thinning(应用瘦身)功能介绍
  7. 你有多久没有体会过“饥饿”的感觉?写在袁隆平仙逝的第7天
  8. 使用css3制作一个简易的环形进度条
  9. Verilog HDL三种描述方式
  10. 盈利“晴空”下,唯品会拨不开的“乌云”