Androidpxdipsp的区别

一、       概述

我们在页面布局的时候,经常会设置容器的长度,但是到底该使用哪个作为长度的单位而懊恼。

在Android中支持的描述大小区域的类型有以下几种。

px(pixels)——像素:不同的设备显示效果相同,一般我们HVGA代表320x480像素,这个用的比较多。

dip(device independent pixels)——设备独立像素:这个和设备硬件有关,一般哦我们为了支持WCGA、HVGA和QVGA推荐使用这个,不依赖于像素。等同于dp。

sp(scaled pixels—best for text size)——带比例的像素。

pt(points)——磅:1pt = 1/72英寸

in(inches)——英寸

mm(millimeters)——毫米

二、       详解

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标签的资源。
不加任何标签的资源是各种分辨率情况下共用的。

Android px、dip、sp相关推荐

  1. Android屏幕大小和密度对照表,以及px、dip、sp等像素单位的解释

    px(Pixels ,像素):对应屏幕上的实际像素点. in(Inches ,英寸):屏幕物理长度单位. mm(Millimeters ,毫米):屏幕物理长度单位. pt(Points ,磅):屏幕物 ...

  2. 区分Android中的各种单位——in、mm、pt、px、dp、dip、sp

    Android常用的单位有in.mm.pt.px.dp.dip.sp. in.mm.pt是屏幕的物理单位,1in=25.4mm=72pt. px是屏幕的像素单位,例如,1080*1920的屏幕在横向有 ...

  3. Android:单位和尺寸(px、pt、dip、dp、sp、layoutparams)

    Android:单位和尺寸 px pt dip dp sp LayoutParams px pixels像素:不同设备显示内容相同 pt point,1pt = 1/72英寸 dip device i ...

  4. android 字体像素转换工具类_Android中px与dip,sp与dip等的转换工具类

    Android中px与dip,sp与dip等的转换工具类 功能 通常在代码中设置组件或文字大小只能用px,通过这个工具类我们可以把dip(dp)或sp为单位的值转换为以px为单位的值而保证大小不变.方 ...

  5. 面向对象基础:OO的五大原则是指SRP、OCP、LSP、DIP、ISP

    OO的五大原则是指SRP.OCP.LSP.DIP.ISP. 1. SRP(Single Responsibility Principle单一职责原则)  单一职责很容易理解,也很容易实现.所谓单一职责 ...

  6. Android dp、dip、dpi、px、sp简介及相关换算,及其应用实例

    屏幕分辨率:在x y轴上的像素点数.单位是px,1px=1个像素点.一般以    纵向像素×横向像素    表示,如1920*1080 dpi--------------------------每英寸 ...

  7. android 全局dp单位,android应用开发之View的大小计量单位(px、dpi、dp、dip、sp)

    http://blog.csdn.net/ljianhui/article/details/43601495?ref=myread 一.像素(px)与屏幕分辨率 1)px(Pixels ,像素):对应 ...

  8. Android中px、dp、dip、sp详解

    众所周知,Android厂商非常多,各种尺寸的Android手机.平板层出不穷.导致了Android生态环境的碎片化现象越来越严重.Google公司为了解决分辨率过多的问题,在Android 的开发文 ...

  9. Android开发之显示篇(弄懂ppi、dpi、pt、px、dp、dip、sp之间的关系看这一篇就够了)

    版权申明]非商业目的注明出处可自由转载 博文地址:https://blog.csdn.net/ShuSheng0007/article/details/85165773 出自:shusheng007 ...

最新文章

  1. oracle定时器怎么开启,Oracle的定时器使用示例
  2. mysql注入式攻击_SQL的注入式攻击方式和避免方法
  3. php 配置域名与端口号,lnmp 配置不同端口号的域名
  4. 力扣(LeetCode)打卡刷题交流计划(长期维护)
  5. java五种加密技术理解
  6. 2021年信用卡行业发展报告
  7. 常用的分布式唯一ID生成方案
  8. Pb(96) The serializable class Model does not declare a static final serialVersionUID field of typ...
  9. python基础教程博客_python基础教程(十)
  10. Python实现表格转shapefile方法
  11. java 修改final_Java反射有效修改final属性值
  12. ubuntu pip安装xgboost
  13. 随机森林系列(一)——随机森林分类算法原理推导
  14. Java生成二维码QRCode(亲测可通过扫码枪扫出)
  15. PySpark之电商广告推荐(1)
  16. JQuery 判断浏览器及其版本
  17. 一篇文章带你认识数学建模中的方程与方程组
  18. 用SQL语句创建数据库和表
  19. SpringMVC超详细入门
  20. SHU1757 村村通工程(Floyd算法)

热门文章

  1. 一个数的因子个数求解公式
  2. 将固态硬盘作为缓存的设置方法
  3. 骚年 你还太弱,请专心练剑
  4. 资本家为什么要破坏资本主义?
  5. ubuntu的视频录制功能
  6. office tab enterprise 14 直装版
  7. mybatis-plus 初始化项目 主键自增策略 自动填充 逻辑删除 乐观锁 复杂查询 分页查询
  8. 用声音检测技术降低美国“赌城”枪击案伤亡(paper+github)
  9. 读论文,第二天(2):Deep inertial poser: learning to reconstruct human pose from sparse inertial
  10. 鲁大师8月新机流畅榜:小米MIUI 12增强版又行了?