Android作为一个开放性的手持装置作业系统,势必面对终端显示器有多种不同规格的情况,这对程式开发者会有一定程度的困扰。
意图成为"云端的微软"的Google自然不会傻到任由开发者自己头痛…于是Android系统有了以下长度大小单位:
- dp [无关密度(density)的像素]
- 一种基于萤幕(像素)密度的抽象单位。
此单位的基础是一个160 dpi的萤幕,160个px必定是1英吋长且与萤幕像素密度无关。
详解:在160 dpi萤幕中,1dp=1px=1/160英吋。
dp和像素的比率会随着萤幕密度而变,但并非一定成正比。
建议使用于设定UI layout上的显示元件 ,如此你的UI将在不同萤幕显示出相同的比率。
(原文为same actual size,本人于不同尺寸萤幕测试结果认为应译为相同比率而非实际大小)
此值亦可写为dip,编译器均能接受,但dp意义会较近似于sp,所以还是写dp就好了。
- 一种基于萤幕(像素)密度的抽象单位。
- sp [无关缩放(scale)的像素]
- 近似于dp的单位,但它也会依据使用者的字型尺寸设定而缩放。
一般 建议使用于指定字型大小 ,显示结果将依据萤幕(像素)密度与使用者的字型尺寸设定而自行调整。
- 近似于dp的单位,但它也会依据使用者的字型尺寸设定而缩放。
- pt [点]
- 1个pt等于1/72英吋的萤幕实体尺寸。
- px [像素]
- 基于萤幕实体像素, 这是个不建议使用的单位 ,因在不同装置上可能有极大差异的表现。
各种不同装置(的萤幕)可能每英吋有不同的像素数,萤幕上的总可用像素亦可能更多或更少。
- 基于萤幕实体像素, 这是个不建议使用的单位 ,因在不同装置上可能有极大差异的表现。
- mm [公厘]
- 基于萤幕实体尺寸。
- in [英吋]
- 基于萤幕实体尺寸。
控件间距参数详解
padding:控件中的文字距离本身控件边框的距离
paddingButtom:控件中的文字距离本身控件下边缘距离
【其他方位类同】
margin:控件整体距离相对另外一个控件的距离
marginBottom:控件整体距离父控件底边的距离
【其他方位类同】
android:drawableBottom:在text的下方输出一个drawable,如图片。如果指定一个颜色的话会把text的背景设为该颜色,并且同 时和background使用时覆盖后者。
android:drawableLeft:在text的左边输出一个drawable,如图片。
android:drawablePadding:设置text与drawable(图片)的间隔,与drawableLeft、drawableRight、drawableTop、drawableBottom一起使用,可设置为负数,单独使用没有效果。
android:drawableRight:在text的右边输出一个drawable。
android:drawableTop:在text的正上方输出一个drawable。