• Android开发基础知识-关于px,dp,dip,sp的不同之处
  • 咸蛋超人 发表于 2016/2/21 20:50:00 | 分类标签: Android开发 像素单位
  • 1.基础知识:

    mm:millimeters 毫米,长度单位。
    in:inches  英寸,长度单位,屏幕物理尺寸大小的基本单位。
    pt:points  一个标准单位,大小为一英寸的屏幕大小的1/72。
    dpi: dots per inch 即每英寸的像素点。
    举个例子:

    假设QVGA(320*240)分辨率的屏幕物理尺寸是(2英寸*1.5英寸),那么这部手机的dpi=160。Screen size(屏幕尺寸)指的是手机实际的物理尺寸。如iPhone4S是3.5英寸,这里指的是手机屏幕对角线的长度是3.5英寸。

    Resolution(分辨率)指手机屏幕横、竖方向像素个数。

    常见的手机分辨率:QVGA(240×320像素),HVGA(480×320像素),WVGA(800×480像素),720P(1280x720像素),1080P(1920x1080像素),2K(2560x1440像素)

    2.基本定义:

    px (Pixel的缩写,即像素) 是指一个像素。
    sp  (scale-independent pixels)是指比例独立像素。
    dip (device independent pixels)是指设备独立像素。
    dp:(Density-independent pixel)在Android文档中(http://developer.android.com/guide/practices/screens_support.html#terms),它的计算方法是:px = dp * (dpi / 160)。

    看一下dp的单位是什么:像素 = dp的单位 * 像素/英寸  。可以看出dp的单位是长度单位英寸。1dp的长度 = 1 * dpi / 160 * 1 / dpi 英寸 = 1 / 160 英寸 。

    dp的意义是:你可以根据看到的实际大小,在应用中设置对应的dp值,而使得不同的设备上看起来一样大。

    3.不同之处

    px(像素)表示屏幕的真实像素,比如现在流行的1080P手机和2K手机,1080P手机就是1920x1080像素,也就是说这个手机的屏幕横向有1080个像素,纵向有1920个像素。这个值是绝对的,是多少就是多少,不会改变。sp(比例独立像素),也就是说是与密度和字体缩放度无关的像素,主要用于字体的大小。

       dip(设备独立像素)这个是逻辑像素单位,其实就是dp。
  • 请您注意

    ·自觉遵守:爱国、守法、自律、真实、文明的原则

    ·尊重网上道德,遵守《全国人大常委会关于维护互联网安全的决定》及中华人民共和国其他各项有关法律法规

    ·严禁发表危害国家安全,破坏民族团结、国家宗教政策和社会稳定,含侮辱、诽谤、教唆、淫秽等内容的作品

    ·承担一切因您的行为而直接或间接导致的民事或刑事法律责任

    ·您在编程中国社区新闻评论发表的作品,本网站有权在网站内保留、转载、引用或者删除

    ·参与本评论即表明您已经阅读并接受上述条款

  • 感谢本文作者
  • 作者头像
  • 昵称:咸蛋超人
  • 加入时间:2013/6/4 0:00:00
  • TA的签名
  • 这家伙很懒,虾米都没写
  • +进入TA的空间
  • 以下内容也很赞哦
分享按钮