Android布局

0 阅读2分钟

1.NenoLamp

此项目的布局就是运用到帧布局

核心特性
  • 最简单的布局,所有控件叠加在一起(层叠显示)。
  • 后写的控件会覆盖先写的控件,默认左上角对齐。
关键属性
  • android:gravity:控制叠加后的对齐方式(居中、居右等)
实例

image.png

最中间的红色图层它就会突出出来,覆盖中间的蓝色图层

image.png

同理 如果你点击其他图层也一样有此效果。

image.png

image.png

2.TableLayout

此项目的布局就是运用到表格布局(TableLayout)

最核心特点

1. 自动列宽,无需手动定义列数

  • 你不用写多少列,系统自动根据一行里的控件数量生成列
  • 列宽由该列最宽控件自动撑开
  • 所有行的同一列宽度保持一致(非常整齐)

2. 必须配合 TableRow 使用

  • 直接写控件无效
  • 必须用 <TableRow> 包裹每一行内容
  • 一行 = 一个 TableRow

3. 不能手动设置宽高

  • layout_width / layout_height 对 TableRow 无效
  • 宽度自动填满父布局
  • 高度自适应内容

4. 可以合并单元格(重要)

支持两个关键属性实现合并:

  • android:layout_span="2"跨 2 列
  • android:layout_column="2"跳过第 2 列,从第 3 列开始

5. 可以隐藏列

  • android:collapseColumns="0" 隐藏第 0 列
  • 方便动态控制表格显示

6. 结构整齐、适合表单类界面

最适合:

  • 登录表单
  • 设置页
  • 个人信息表
  • 键值对展示
实例

image.png

3.linearLayout

线性布局

核心特性
  • 最基础、最常用的布局,控件按单一方向排列(水平 / 垂直)。
  • 控件依次排布,不会自动换行,方向由 android:orientation 控制。
关键属性

表格

属性取值说明
android:orientationhorizontal(水平)/ vertical(垂直)排列方向
android:layout_weight数字权重,按比例分配剩余空间(核心适配属性)
android:gravity对齐方式子控件在布局内的对齐(居中、居右等)
实例
Screenshot 2026-03-26 120959.png

4.RelativeLayout(相对布局)

核心特性
  • 控件以其他控件 / 父布局为参考定位,自由度最高。
  • 不用嵌套多层,就能实现复杂对齐,减少布局层级。
关键属性(分三类)
  1. 相对于父布局layout_centerInParent(居中)、layout_alignParentTop(顶部对齐)
  2. 相对于其他控件layout_toRightOf(在某控件右侧)、layout_below(在某控件下方)
  3. 对齐关系layout_alignTop(与某控件顶部对齐)
实例
image.png