`

【转】Android:pt 、sp、dp之间的换算

 
阅读更多
dip: device independent pixels(设备独立像素). 不同设备有不同的显示效果,这个和设备硬件有关,一般我们为了支持WVGA、HVGA和QVGA 推荐使用这个,不依赖像素。

       px: pixels(像素). 不同设备显示效果相同,一般我们HVGA代表320x480像素,这个用的比较多。
       pt: point,是一个标准的长度单位,1pt=1/72英寸,用于印刷业,非常简单易用;
       sp: scaled pixels(放大像素). 主要用于字体显示best for textsize。由此,根据 google 的建议,TextView 的
字号最好使用 sp 做单位,而且查看TextView的源码可知 Android 默认使用 sp 作为字号单位。

       在 Android 中,  1pt 大概等于 2.22sp以上供参考,如果 UI 能够以 sp 为单位提供设计是最好的,如果设计中没有 sp的概念,则开发人员也可以通过适当的换算取近似值。

       过去,程序员通常以像素为单位设计计算机用户界面。例如,定义一个宽度为300像素的表单字段,列之间的间距为5个像素,图标大小为16×16像素 等。这样处理的问题在于,如果在一个每英寸点数(dpi)更高的新显示器上运行该程序,则用户界面会显得很小。在有些情况下,用户界面可能会小到难以看清 内容。

       与分辨率无关的度量单位可以解决这一问题。Android支持下列所有单位。
       px(像素):屏幕上的点。
       in(英寸):长度单位。
       mm(毫米):长度单位。
       pt(磅):1/72英寸。
       dp(与密度无关的像素):一种基于屏幕密度的抽象单位。在每英寸160点的显示器上,1dp = 1px。
       dip:与dp相同,多用于android/ophone示例中。
       sp(与刻度无关的像素):与dp类似,但是可以根据用户的字体大小首选项进行缩放。

       分辨率:整个屏是多少点,比如800x480,它是对于软件来说的显示单位,以px为单位的点。 density(密度)值表示每英寸有多少个显示点,与分辨率是两个概念。apk的资源包中,

       当屏幕density=240时使用hdpi标签的资源
       当屏幕density=160时,使用mdpi标签的资源
       当屏幕density=120时,使用ldpi标签的资源。
       一般android设置长度和宽度多用dip,设置字体大小多用sp. 在屏幕密度为160,1dp=1px=1dip, 1pt = 160/72 sp 1pt = 1/72 英寸.当屏幕密度为240时,1dp=1dip=1.5px.

        为了使用户界面能够在现在和将来的显示器类型上正常显示,建议大家始终使用sp作为文字大小的单位,将dip作为其他元素的单位。当然,也可以考虑使用矢量图形,而不是用位图。
转自:http://blog.csdn.net/ouyangtianhan/article/details/7245843
分享到:
评论

相关推荐

    Android中dip、dp、sp、pt和px的区别

    本文将详细解析Android中常见的五种尺寸单位:dip(设备独立像素)、dp(密度无关像素)、sp(可缩放像素)、pt(点)和px(像素),并探讨它们之间的关系和应用场景。 首先,我们来了解一下px(像素)。像素是屏幕...

    android布局单位sp,dp,pt,px的区别

    在Android开发中,为了确保应用在不同屏幕尺寸和密度下的适应性和一致性,使用了多种布局单位,其中最为常见的包括sp、dp(或dip)、pt和px。这些单位各有其特性和应用场景,理解它们之间的差异对于创建响应式和用户...

    Android:Drawable样式和尺寸单位源代码

    绝对单位包括像素(dp)、英寸(in)、毫米(mm)和点(pt),而相对单位主要是百分比。在XML中,我们通常使用dp(density-independent pixels)作为尺寸单位,因为它能保证在不同密度的设备上显示一致的大小。 例如,如果...

    Android的计量单位px,in,mm,pt,dp,dip,sp

    在处理不同屏幕密度时,Android系统会根据设备的density值来调整dp和sp单位。例如,对于一个480dip*800dip的WVGA屏幕(density=240),在120dpi的屏幕上,实际分辨率为240px*400px,而在240dpi的屏幕上,实际分辨率...

    Android中的长度单位详解(dp、sp、px、in、pt、mm).pdf

    本文将深入探讨Android中常见的长度单位:dp、sp、px、in、pt以及mm,帮助开发者们更好地理解和应用这些单位。 首先,我们要知道Android系统支持多种尺寸单位,主要是为了适应不同屏幕大小和分辨率的设备。以下是对...

    引用 Android上dip、dp、px、sp等单位说明

    在Android开发中,为了确保应用在不同分辨率和屏幕尺寸上的显示效果一致,开发者需要掌握几种关键的尺寸单位,包括dip(或dp)、px、sp以及它们之间的转换关系。 #### 1. dip(dp) **dip**(device-independent ...

    dip, dp, px, sp区别 android

    "Android 中的 dip, dp, px, sp 单位区别" Android 中的单位系统是一个复杂的问题,对于开发人员来说,选择正确的单位是非常重要的。在 Android 中,我们常见的单位有 dip, dp, px, sp 等,这些单位都有其特点和...

    RadioButton的使用

    RadioButton的个人调查 android:id="@+id/ib1" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="上一题" android:textSize="15dp" /> ... android:textSize="15pt" />

    Android-AndroidUnits用于在不同Android显示单位之间转换的工具类

    "AndroidUnits" 是一个专门为此目的设计的工具类,它提供了方便的方法来帮助开发者在像素(px)、密度独立像素(dp)、可缩放像素(sp)、点(pt)以及英寸(in)等单位之间进行转换。了解并掌握这个工具类的使用...

    pt100手机java分度换算软件.rar

    标题中的“pt100手机java分度换算软件.rar”指的是一个压缩包文件,它包含了一个用于手机上的Java应用程序,该程序设计用于处理PT100传感器的温度数据并进行分度换算。PT100是铂电阻温度计的一种,广泛应用于工业...

    PT100换算表

    ### PT100换算表知识点详解 #### 一、PT100概述 PT100是一种常见的温度传感器,其名称来源于“Platinum”(铂)和在0°C时的电阻值为100Ω。它属于金属热电阻(RTD),广泛应用于工业自动化控制系统中,用于测量...

    IC: PT1301

    1. **工作电压范围**:PT1301的工作电压范围较宽,通常在2.5V至5.5V之间,这使得它能够在不同的电源条件下正常工作。 2. **电流消耗**:该IC具有较低的静态电流消耗,通常小于1mA,在电池供电的应用中尤为重要,可以...

    android编程中的单位

    <manifest xmlns:android="http://schemas.android.com/apk/res/android"> android:smallScreens="true" android:normalScreens="true" android:largeScreens="true" android:xlargeScreens="true" android:...

    Android中dip、dp、sp、pt和px的区别详解

    本文主要解析Android中的五个关键单位:dip、dp、sp、pt和px,以及它们之间的区别。 1. **dip(设备独立像素)**: 设备独立像素是一种与设备硬件无关的单位,它的大小会根据设备的物理密度进行调整,确保在不同...

    APP界面设计规范二Android版样本.doc

    Android 设计规范知识点总结: Android 设计常识是指在 Android 端设计规范中的一些基本概念和单位,包括 PPI、DPI、屏幕尺寸、分辨率、px、pt、sp 和 dp 等。了解这些单位的换算关系是设计师、开发者需要了解的...

    pt100温度与阻值间的换算公式

    为了准确地将Pt100测得的电阻值转换成相应的温度值,我们需要掌握其阻值与温度之间的换算公式。 #### 换算公式介绍 对于Pt100来说,其在不同温度范围内的阻值与温度之间的关系可以用以下两个公式表示: 1. **当...

    Android基础教程(二)之五大布局对象

    xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="match_parent" android:layout_height="match_parent"> <!-- 添加一个Button --> android:text="按钮" android:layout...

Global site tag (gtag.js) - Google Analytics