美文网首页
Android 中 px 、dp、dip 和 sp 有什么 区别

Android 中 px 、dp、dip 和 sp 有什么 区别

作者: 何一涛 | 来源:发表于2016-12-05 00:27 被阅读1166次

    imhet 译自 stackoverflow

    问题描述

    Android 中px、dp、dip 和 sp 有什么区别?

    高票答案

    官方开发文档中,可以看到:

    1. px 像素,对应于屏幕上的实际像素
    1. in 英寸,基于屏幕的物理尺寸,1英寸 = 2.54厘米
    2. mm 毫米,基于屏幕的物理尺寸
    3. pt 点,基于屏幕的物理尺寸,相当于 1/72 英寸
    4. dp 或 dip 与密度无关的像素单位,基于屏幕的物理尺寸的抽象单位。它相对于 160 dpi 的屏幕,在 160 dpi 的屏幕上 1dp 相当于 1px 。dp 与 pix 的比例会随着屏幕密度变化而变化,但不一定成正比。
    5. sp 与缩放无关的像素单位,类似 dp ,不同之处在于它还会根据用户字体大小配置而缩放。开发中指定字体大小时建议使用 sp ,因为它会根据屏幕密度和用户字体配置而适配。

    理解 Android 密度独立性这篇文章中有两个比较有用的表可以回答你的问题:

    屏幕密度级别 屏幕密度 物理尺寸 像素大小
    lpdi 120 dpi 0.5 x 0.5 in 0.5 in * 120 dpi = 60x60 px
    mdpi 160 dpi 0.5 x 0.5 in 0.5 in * 160 dpi = 80x80 px
    hdpi 240 dpi 0.5 x 0.5 in 0.5 in * 240 dpi = 120x120 px
    xhdpi 320 dpi 0.5 x 0.5 in 0.5 in * 320 dpi = 160x160 px
    xxhdpi 480 dpi 0.5 x 0.5 in 0.5 in * 480 dpi = 240x240 px
    xxxhdpi 640 dpi 0.5 x 0.5 in 0.5 in * 640 dpi = 320x320 px
    单位 描述 每英寸中含多少 密度无关 在每个屏幕上是否是同样大小
    px 像素 很多
    in 英寸 1
    mm 毫米 25.4
    pt 72
    dp 密度无关像素 ~160
    sp 缩放无关像素 ~160

    更多信息可以参见 Google 设计文档

    相关文章

      网友评论

          本文标题:Android 中 px 、dp、dip 和 sp 有什么 区别

          本文链接:https://www.haomeiwen.com/subject/odlkmttx.html