一、介绍一下 dp 和 sp。

dp 也就是 dip。这个和 sp 基本类似。假设设置表示长度、高度等属性时能够使用 dp 或 sp。但假设设置字体,须要使用 sp。

dp 是与密度无关,sp除了与密度无关外,还与 scale 无关。假设屏幕密度为160,这时 dp 和 sp 和 px 是一样的。

1dp=1sp=1px

二、介绍一下px

但假设使用 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 厘米。读者能够去量一量自己的手机屏幕。看和实际的尺寸是否一致。

欢迎大家增加我的qq 群:454430053

最新文章

  1. node05-fs
  2. Android守护进程
  3. 多个div居中显示
  4. jquery validate 隐藏域内容验证
  5. python为什么会有@classmethod?
  6. LIST 和 MAP
  7. android开发系列之代码整洁之道
  8. [转]vector iterator not incrementable 的问题
  9. C#设计模式-创建型模式(转)
  10. powerdesigner 转换各种数据库SQL
  11. C语言-进制
  12. 转帖Jmeter中的几个重要测试指标释义
  13. 领域驱动设计(DDD)部分核心概念的个人理解(转)
  14. notes/Set up development environment on windows
  15. 修改某个UITextField的键盘的返回键类型以及监听键盘的高度变化,取到键盘动画退出弹出的时间,一起随着键盘顶出来或者压下去,
  16. ABP+AdminLTE+Bootstrap Table权限管理系统第二节--在ABP的基础做数据库脚本处理
  17. c++ STL容器适配器
  18. linux开机启动流程及需要开机启动服务讲解和修改及防火墙
  19. Java框架spring 学习笔记(九):Spring的bean管理(@Required、@Component、@Autowired、@Resource注解)
  20. c++ hash_map/unordered_map 使用

热门文章

  1. Python学习之argparse
  2. 利用linux判断elf文件是64位还是32位
  3. 折半搜索【p4799】[CEOI2015 Day2]世界冰球锦标赛
  4. 后台开发常用mysql语句_v1.0
  5. iOS 9音频应用开发基础教程
  6. Openstack关于Regions和Availability Zones
  7. .net中session的使用
  8. [BZOJ4247]挂饰(DP)
  9. Failed to read auto-increment value from storage engine错误的处理方法
  10. system.ComponentModel.Win32Exception (0x80004005): 目录名无效。 解决方法