Android 布局资源详解(结合 Chapter2 四个示例项目)

1 阅读2分钟

在 Android 开发中,布局资源(Layout Resource)用于定义界面的结构,是 UI 开发的核心。本次通过 Chapter2 中的 4 个示例项目运行实践,总结了 Android 中最常用的四种布局类型,并结合实际效果进行分析。

一、实验环境与项目说明

  • 开发工具:Android Studio

  • 项目来源:Chapter2 示例工程

  • 实验内容:

    • 成功运行 4 个示例项目
    • 观察 UI 布局效果
    • 截图并整理展示

二、Android 布局资源概述

在 Android 中,布局文件通常位于:

res/layout/*.xml

用于描述 UI 组件的排列方式。

常见布局类型有:

布局类型特点
LinearLayout线性排列
RelativeLayout相对位置
ConstraintLayout约束布局(推荐)
FrameLayout层叠布局

三、四种常用布局详解


1️、 LinearLayout(线性布局)

特点:按方向依次排列(水平 or 垂直)

核心属性:

  • orientation:排列方向

    • vertical(垂直)
    • horizontal(水平)
  • layout_weight:权重分配空间

image.png 优点:

  • 简单直观
  • 易于上手

缺点:

  • 嵌套多层时性能差(层级过深)

运行截图:

image.png

2️、 RelativeLayout(相对布局)

特点:组件之间通过“相对关系”定位

常用属性:

  • layout_below
  • layout_above
  • layout_toRightOf
  • layout_alignParentTop

image.png 优点:

  • 灵活控制位置
  • 比 LinearLayout 更少嵌套

缺点:

  • 规则复杂
  • 多组件时难维护

运行截图:

image.png

3、 FrameLayout(帧布局)

特点:子元素层叠(类似叠罗汉)

image.png 优点:

  • 简单

  • 适合:

    • Fragment 容器
    • 悬浮效果

缺点:

  • 不适合复杂布局

运行截图:

image.png

4、TableLayout(表格布局)

特点:以“行 + 列”的形式组织 UI,类似 HTML 表格

在 Android 中,TableLayout 用于按行列方式排列控件,每一行由 TableRow 表示。

常用属性

TableLayout 属性:

  • stretchColumns:拉伸列(让某列填满空间)
  • shrinkColumns:压缩列
  • collapseColumns:隐藏列

TableRow 属性:

  • layout_column:指定列位置
  • layout_span:跨列(类似 colspan)

image.png

优点

  • 结构清晰(特别适合“表单类 UI”)
  • 自动对齐列
  • 写法直观,类似 HTML 表格

缺点

  • 灵活性差
  • 不适合复杂 UI
  • 已逐渐被 ConstraintLayout 替代

运行截图:

image.png

实验总结

本次通过运行 Chapter2 中的四个示例项目,对 LinearLayout、RelativeLayout、FrameLayout 和 TableLayout 四种布局进行了实践与对比分析。不同布局在结构方式、使用场景及性能方面各有优缺点。在实际开发中,应根据界面复杂度合理选择布局类型,同时优先考虑使用 ConstraintLayout 以提升界面性能和可维护性。