Android四种布局常用类型

0 阅读2分钟

1. LinearLayout 线性布局(最基础、最常用)

官方定义

子控件按照 水平 或 垂直 方向排成一条直线,像排队一样。

核心属性

  1. android:orientation

    • vertical:垂直排列(从上到下)
    • horizontal:水平排列(从左到右)
  2. android:layout_weight(权重,最重要)

    • 用来平分剩余空间
    • 数值越大,占的位置越多
    • 使用时对应方向的宽度 / 高度要设为 0dp
  3. android:gravity控制子控件在布局内的对齐方式

    • center:居中
    • left / right
    • top / bottom
  4. android:layout_gravity控制自己在父布局中的对齐方式

优点

  • 最简单、最容易上手
  • 结构清晰,适合线性排列

缺点

  • 复杂界面需要多层嵌套,性能差
  • 无法实现不规则对齐

适用场景

  • 单行按钮
  • 垂直列表条目
  • 简单表单
  • 需要平分空间的界面 屏幕截图 2026-03-27 085222.png

2. FrameLayout 帧布局(最简单、效率最高)

官方定义

所有子控件默认叠加在左上角,像叠卡片一样。

核心特点

  • 后添加的控件会覆盖在先添加的控件之上
  • 布局计算最快,性能最高
  • 几乎没有复杂属性

常用属性

  • layout_gravity:控制控件在布局中的位置
  • foreground:前景图

优点

  • 性能最高
  • 代码最简单

缺点

  • 只能叠加,不能复杂排列

适用场景

  • Fragment 容器
  • 图片叠加
  • 加载动画
  • 单个控件展示
  • 视频播放界面 屏幕截图 2026-03-27 085452.png

3. RelativeLayout 相对布局(最灵活)

官方定义

子控件以其他控件 或 父布局为参照物进行定位。

核心属性

相对于父布局

  • layout_centerInParent 居中
  • layout_alignParentTop 贴顶部
  • layout_alignParentBottom 贴底部
  • layout_alignParentLeft 贴左边

相对于其他控件

  • layout_toRightOf 在某控件右边
  • layout_toLeftOf 在某控件左边
  • layout_below 在某控件下方
  • layout_above 在某控件上方
  • layout_alignTop 与某控件顶部对齐

优点

  • 非常灵活
  • 减少嵌套,性能比 LinearLayout 好

缺点

  • 属性多,新手容易记混
  • 过于复杂的界面写起来麻烦

适用场景

  • 登录界面(按钮在输入框下方)
  • 不规则对齐的控件
  • 不需要嵌套就能完成的界面 屏幕截图 2026-03-27 085615.png

4. TableLayout(表格布局)

  • 继承自 LinearLayout,以行和列的表格形式排列控件。
  • <TableRow> 标签定义一行,每个子控件代表一列。
  • 适合做表单、数据表格类界面(比如登录页的输入框 + 标签对齐)。

屏幕截图 2026-03-27 085749.png