学习安卓布局前,先了解三个属性值:

1、fill_parent:

设置一个构件的布局为fill_parent将强制性地使构件扩展,以填充布局单元内尽可能多的空间

2、match_parent:

Android2.2中match_parent和fill_parent是一个意思 .两个参数意思一样,match_parent更贴切,
于是从2.2开始两个词都可以用。那么如果考虑低版本的使用情况你就需要用fill_parent了

3、wrap_content:

        设置一个视图的尺寸为wrap_content将强制性地使视图扩展以显示全部内容。

安卓的单位区别:

px:

px即像素,1px即代表屏幕上的一个物理像素点。px单位不建议使用

dp:

在介绍这个单位之前,首先我们来了解一下像素密度。假设有一部手机,屏幕的物理尺寸为1.5英寸x2英寸,屏幕分辨率为240x320,则我们可以计算出在这部手机的屏幕上,每英寸包含的像素点的数量为240/1.5=160dpi(横向)或320/2=160dpi(纵向),160dpi就是这部手机的像素密度,像素密度的单位dpi是Dots Per Inch的缩写,即每英寸像素数量。横向和纵向的这个值都是相同的,原因是大部分手机屏幕使用正方形的像素点。
不同的手机/平板可能具有不同的像素密度。Android系统定义了几种像素密度:低(120dpi)、中(160dpi)、高(240dpi)、超高(320dpi)、超超高(480dpi)、超超超高(640dpi),它们对应的dp到px的系数分别为0.75、1、1.5、2、3、4,这个系数乘以dp长度就是像素数。例如界面上有一个长度为“100dp”的图片,那么它在240dpi的手机上实际显示为100x1.5=150px,在320dpi的手机上实际显示为100x2=200px。如果你拿这两部手机放在一起对比,会发现这个图片的物理尺寸“差不多”,这就是使用dp作为单位的效果。

 dip:

dip和dp完全相同,只是名字不同而已。在早期的Android版本里面多使用dip,后来为了和sp统一起来建议使用dp。

 sp:

sp和dp类似,但是有一个唯一的不同点:
Android系统允许用户自定义字体大小(小,正常,大,超大等等),当大小为“正常”时1sp = 1dp = 0.00625英寸,而当大小为“大”或“超大”时,1sp > 1dp = 0.00625英寸。类似我们在windows里调整字体尺寸以后的效果——窗口大小不变,只有文字大小改变。

使用场合:

谷歌的官方文档建议:文字的尺寸一律用sp单位,非文字的尺寸一律使用dp单位。例如textSize="16sp"、layout_width="60dp"

偶尔需要使用px单位,例如需要在屏幕上画一条细的分隔线时:<View layout_width="match_parent" layout_height="1px"/>

最新文章

  1. 通过Spring Mail Api发送邮件
  2. 记一次SQLServer数据库误删数据找回
  3. Codeforces Beta Round #4 (Div. 2 Only) C. Registration system hash
  4. SharePoint SiteCollection Administrator
  5. AngularJs的resource服务与Rest服务交互
  6. CSS中的一下小技巧2之CSS3动画勾选运用
  7. 输入法无法切换 win10
  8. 散列表(has table、哈希表)
  9. 基于ubuntu搭建 WordPress 个人博客
  10. 比对软件之STAR的使用方法
  11. prometheus远程连接m3db实现存储
  12. 七. Python基础(7)--文件的读写
  13. __stdcall __cdecl 引起的程序崩溃
  14. POJ 3176 Cow Bowling(dp)
  15. FunDA(7)- Reactive Streams to fs2 Pull Streams
  16. ansible常用套路(一)
  17. JS+MySQL获取 京东 省市区 地区
  18. 初识Symbol
  19. FROM_UNIXTIME(unix_timestamp), FROM_UNIXTIME(unix_timestamp,format)
  20. zigbee广播通信原理

热门文章

  1. 牛客网——G大水题
  2. Eclips安装SVN插件
  3. 为了更好更方便地活着——爱上private
  4. Beta阶段第2周/共2周 Scrum立会报告+燃尽图 11
  5. New Concept English Two 16 40
  6. 公式中表达单个双引号【&quot;】和空值【&quot;&quot;】的方法及说明
  7. openGL之着色器程序的使用
  8. [QT_OPENCV] qt下opencv配置以及首个opencv工程
  9. 从HDU2588:GCD 到 HDU5514:Frogs (欧拉公式)
  10. 白帽子讲web安全——一个安全解决方案的诞生细节