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

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. Android(安卓)UI 的单位和概念
  2. Android多分辨率自适应
  3. Android(安卓)Bitmap图像效果处理
  4. 【Android基础】常用的布局和单位的简介
  5. Android中的getDimension,getDimensionPixelOffset和getDimensio
  6. android 获取字符串在屏幕中所占像素宽度和高度
  7. Android(安卓)碎片化 适配问题
  8. Android中获取字符串长度、宽度(所占像素宽度)
  9. [安卓基础] 008.Android中的显示单位

随机推荐

  1. Android ListView监听上下滑动(判断是否
  2. Android本地数据存储之Sharedpreference
  3. Android Studio 出现 Gradle's dependenc
  4. Android基础入门教程——7.4 Android调用
  5. 如何删除android中的蓝色操作栏?
  6. 解决Android Studio下载更新Android SDK
  7. Android自定义View底部连续圆环效果
  8. Android中RecyclerView的item中控件的点
  9. Android Studio精彩案例(五)《JSMS短信验
  10. Android模拟器调试html5 app