`

android 长度单位

阅读更多

 

Historically, programmers always designed computer interfaces in terms of pixels. For example, you mightmake a field 300 pixels wide, allow 5 pixels of spacing between columns, and define icons 16-by-16 pixels in size. The problem is that if you run that program on new displays with more and more dots per inch (dpi), the user interface appears smaller and smaller. At some point, it becomes too hard to read. Resolution-independent measurements help solve this problem.
Android supports all the following units:
• px (pixels): Dots on the screen.
• in (inches): Size as measured by a ruler.
• mm (millimeters): Size as measured by a ruler.
• pt (points): 1/72 of an inch.
• dp (density-independent pixels): An abstract unit based on the density of the screen. On a display with 160 dots per inch, 1dp = 1px.
• dip: Synonym for dp, used more often in Google examples.
• sp (scale-independent pixels): Similar to dp but also scaled by the user’s font size preference.
To make your interface scalable to any current and future type of display, I recommend you always use the sp unit for text sizes and the dip unit for everything else. You should also consider using vector graphics instead of bitmaps

如果英文不想看,看下面:

px:是屏幕的像素点

in:英寸

mm:毫米

pt:磅,1/72 英寸

dp:一个基于density的抽象单位,如果一个160dpi的屏幕,1dp=1px

dip:等同于dp

sp:同dp相似,但还会根据用户的字体大小偏好来缩放。

建议使用sp作为文本的单位,其它用dip

针对dip和px 的关系,做以下概述:

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标签的资源。
不加任何标签的资源是各种分辨率情况下共用的。
布局时尽量使用单位dip,少使用px



本文来自CSDN博客,转载请标明出处:http://blog.csdn.net/hustpzb/archive/2010/11/20/6023145.aspx

分享到:
评论

相关推荐

    Android的单位转换工具类

    一个简单的用于Android的dp、sp和px单位之间的转换工具类

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

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

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

    总算,把Android中要用到各种长度单位,讲清楚了,以前用的时候,总是不清不楚的。现在用得心里有底了。

    android实现单位换算

    android实现简单的单位换算,用Intent实现界面直接的数据传递。

    android 单位换算

    该程序能实现 长度 温度 重量 能量,体积,压力之间的转换 android1.6版本

    Android开发EditText属性.txt

     android:maxLength限制显示的文本长度,超出部分不显示。  android:lines设置文本的行数,设置两行就显示两行,即使第二行没有数据。  android:maxLines设置文本的最大显示行数,与width或者layout_width结合...

    android学习文档

    2.1.3 常用的长度单位解析: 21 2.2 线性布局 22 2.3 表格布局 22 2.4 相对布局 23 2.5 基本界面组件 23 2、Activity生命周期及其实例分析 24 1.1 Avtivity介绍 24 1.2 Activity的生命周期 25 1.2.1 Activity的三种...

    Android开发规范

    Android内部开发规范,编码规范 目录 1 介绍 5 1.1 目的 5 1.2 术语和定义 5 2 文件组织 5 2.1 JAVA包和源文件 5 2.1.1 开头注释 5 2.1.2 包和引入语句 6 2.1.3 类和接口声明 6 3 缩进排版 7 3.1 行长度 7 3.2 括号 ...

    A毕业设计:基于android 的测量程序设计

    基于Android的测量程序设计可以涉及到各种领域的测量应用,比如长度测量、温度测量、重量测量等。设计这样的程序需要考虑以下几个关键方面: 1. 用户界面设计:设计直观友好的用户界面,包括测量显示窗口、测量单位...

    SwissArmyKnife-android免root兼容所有版本ui调试工具.zip

    所有边距单位都是dp(pt),android中会四舍五入,所有边距都是整数,所以可能跟设计图中有不超过1dp(pt)的误差。宽高选项开启后会看到控件的宽高,单位是dp(pt)图片宽高字体大小字体颜色16进制,ARGB强制图片宽...

    A毕业设计:基于android的测量程序设计

    基于Android的测量程序设计可以涉及各种类型的测量应用,包括但不限于长度、温度、重量、时间等方面的测量。以下是设计这类应用时可能涉及的关键步骤和功能: 1. **确定测量类型**:首先需要确定设计的测量类型,...

    Android开发人员不得不收集的代码

    timeSpan2Millis, millis2TimeSpan : 以 unit 为单位的时间长度与毫秒时间戳互转 millis2FitTimeSpan : 毫秒时间戳转合适时间长度 bytes2Bits, bits2Bytes : bytes 与 bits 互转 input2OutputStream, output2...

    安卓JAVA单位转换器

    这是一个有用的单位转换器应用程序,允许用户将任何长度单位转换为其他 12 个单位。 利用 Android 应用程序的基本功能,如选项菜单、微调器、XML 设计网格布局、多活动和片段。 为了系统地转换所有单位,选择厘米...

    XamConverter:Xamarin.Forms中使用MVVM架构创建的iOS和Android应用,可转换长度,质量和温度单位

    XamConverter 使用转换长度,质量和温度单位的iOS和Android应用程序 安卓 的iOS

    Android开发中给EditText控件添加TextWatcher监听实现对输入字数的限制(推荐)

    做这个功能是因为开发项目的时候,由于后台接口的一些参数的值的长度有要求,不能超过多少个字符,所以在编辑框中输入的字符是要有限制的。 下面就来看一下demo的实现过程: 首先,在xml控件中放置一个EditText控件...

    Android的单位以及屏幕分辨率详解

    dp和sp和实际像素没有关系,对于一定分辨率但不同密度的屏幕,px单位的应用可能会导致长度的相对比例的变化。 三、密度与分辨率:密度值表示每英寸有多少个显示点,与分辨率是两个概念。 其屏幕密度标准是:HVGA屏...

    Android 中SP与DP的区别实例详解

    1.长度宽度的数值要使用dp作为单位放入dimens.xml文件中 2.字体大小的数值要使用sp作为单位,也放入dimens.xml文件中 然后,就没有然后了,仿佛潜台词就是说,你记住去用就行了. 偶然有一天,当我们阴差阳错地将字体写...

    Android图片压缩以及优化实例

    前言 图片压缩在Android技术中已经属于烂大街,上周看了2个开源库然后对自己项目的压缩做了对比,发现一些新...bitmap内存大小 = 图片长度 x 图片宽度 x 单位像素占用的字节数 起决定因素就是最后那个参数了,Bitmap

Global site tag (gtag.js) - Google Analytics