Android 四种常用布局资源

16 阅读3分钟

一、Android 资源主要分为以下类型:

  1. 布局资源:res/layout/ 下的 XML 文件,用于定义界面结构。
  2. 字符串资源:res/values/strings.xml,存储文本内容,支持多语言适配。
  3. 颜色资源:res/values/colors.xml,定义颜色值与别名。
  4. 尺寸资源:res/values/dimens.xml,定义控件大小、间距等尺寸。
  5. 样式与主题资源:res/values/styles.xml,控制控件与应用的视觉风格。
  6. 图片资源:res/drawable/,包含位图、矢量图、形状图等。
  7. 动画资源:res/anim/ 或 res/animator/,定义视图动画与属性动画。
  8. 菜单资源:res/menu/,定义应用菜单与选项。
  9. 原始资源:res/raw/,存放音频、视频等二进制文件。
  10. 资产资源:assets/,存放任意格式文件,需通过 AssetManager 访问。

二、四种布局资源类型详细介绍(结合项目)

  1. LinearLayout(线性布局) 对应项目:LinearLayout

布局介绍:LinearLayout 是 Android 最基础的布局,按水平或垂直方向依次排列子控件。

核心属性:android:orientation,取值为 vertical(垂直)或 horizontal(水平)

权重分配:通过 android:layout_weight 按比例分配剩余空间,实现灵活尺寸适配

适用场景:简单线性排列界面,如登录表单、列表项、按钮组等

  1. FrameLayout(帧布局)

对应项目:NeonLamp

布局介绍:FrameLayout 是层叠布局,所有子控件默认叠加在父容器左上角,后添加的控件会覆盖前面的控件。

特点:控件层级分明,适合实现叠加效果、动画层或 Fragment 容器

适用场景:霓虹灯效果、加载动画、单控件展示等

项目体现:截图中多个彩色方块层层叠加,直观体现了 FrameLayout 的层叠特性

  1. RelativeLayout(相对布局)

对应项目:RelativeLayout

布局介绍:RelativeLayout 以相对位置定位控件,可相对于父容器或其他兄弟控件摆放。

常用属性: layout_alignParentTop:与父容器顶部对齐

layout_below:位于指定控件下方

layout_toRightOf:位于指定控件右侧

特点:灵活性高,可实现复杂界面排版,减少布局嵌套

适用场景:需要控件相互对齐、位置依赖的界面

  1. TableLayout(表格布局)

对应项目:TableLayout

布局介绍:TableLayout 以行和列形式排列控件,类似 HTML 表格结构。

核心组件:通过 TableRow 定义每一行,每行中的控件自动成为一列

特点:列宽由内容自动适配,可实现规整的表格状界面

适用场景:表单、数据列表、计算器键盘等需要行列对齐的场景

项目体现:截图中按钮按多行多列整齐排列,完美体现了 TableLayout 的表格特性

思维导图.jpg

三、总结

四种布局各有适用场景:

LinearLayout:适合简单线性排列的基础界面

FrameLayout:适合层叠展示、叠加效果或动画场景

RelativeLayout:适合相对定位、复杂排版且需减少嵌套的界面

TableLayout:适合行列规整、需要表格对齐的场景

实际开发中可根据界面需求选择合适布局,也可组合多种布局实现更高效的界面构建。