Android 资源类型完整列举 + 四大常用布局详细介绍

6 阅读3分钟

Android 资源类型完整列举 + 四大常用布局详细介绍

一、Android 常见资源类型(完整清单)

Android 资源统一放在  res/  目录下,按用途分为以下几大类:

1. anim:补间动画资源(透明度、缩放、平移、旋转) 2. animator:属性动画资源(更强大的动画,基于对象属性) 3. color:颜色状态列表资源(如按钮按下、选中变色) 4. drawable:图片与图形资源

  • 位图:png、jpg、webp、gif
  • 矢量图:vector
  • 形状:shape
  • 状态选择器:selector
  • 图层:layer-list 5. layout:布局资源文件(核心,下文重点讲) 6. menu:菜单资源(选项菜单、上下文菜单、底部菜单) 7. mipmap:应用启动图标(不同密度适配) 8. raw:原始文件资源(音频、视频、任意二进制文件,不编译) 9. values:值资源
  • strings:字符串
  • colors:颜色值
  • dimens:尺寸
  • styles:样式与主题
  • arrays:数组
  • integers:整数
  • bools:布尔值 10. xml:任意自定义 XML 配置文件 11. font:字体资源(ttf、otf) 12. raw、assets:原生文件(assets 不按分辨率区分)

 

二、布局资源(layout)四种最常用类型详解

布局资源用于控制界面控件的排列方式,文件后缀为  .xml ,存放于  res/layout/ 。

  1. LinearLayout(线性布局)

核心特点:控件按水平或垂直一条线排列,最基础、最常用。

  • 关键属性
  •  android:orientation 
  •  vertical :垂直排列(从上到下)
  •  horizontal :水平排列(从左到右)
  •  android:layout_weight :权重,按比例分配剩余空间
  •  android:gravity :内部控件对齐方式
  •  android:layout_gravity :自身在父布局中的对齐
  • 适用场景
  • 简单单列/单行排列
  • 表单、列表项、登录界面等规整线性结构
  • 优点:简单、轻量、性能好
  • 缺点:复杂界面嵌套过多会导致层级过深

 

  1. RelativeLayout(相对布局)

核心特点:控件相对于父布局或其他控件定位,灵活度极高。

  • 关键属性
  • 相对于父布局
  •  layout_centerInParent 
  •  layout_alignParentTop/Bottom/Left/Right 
  • 相对于其他控件
  •  layout_toLeftOf  /  layout_toRightOf 
  •  layout_above  /  layout_below 
  •  layout_alignTop/alignBottom  对齐另一控件边缘
  • 适用场景
  • 控件位置不规则、需要互相依赖对齐
  • 减少布局嵌套层级
  • 优点:灵活,可大幅减少嵌套
  • 缺点:复杂关系会增加测量计算成本,性能略低

 

  1. ConstraintLayout(约束布局 · 推荐首选)

核心特点:通过约束线定位控件,功能最强、层级最少、性能最优,Google 官方推荐。

  • 关键概念
  • 每个控件至少需要水平 + 垂直各一条约束
  • 常见约束:
  •  layout_constraintLeft_toLeftOf 
  •  layout_constraintEnd_toEndOf 
  •  layout_constraintTop_toTopOf 
  •  layout_constraintBottom_toBottomOf 
  •  layout_constraintGuide_begin  辅助参考线
  •  bias  比例偏移
  •  chain  链样式(spread、packed 等)
  • 适用场景
  • 复杂 UI、多设备适配
  • 希望零嵌套 / 少嵌套实现任何界面
  • 优点
  • 层级扁平,绘制性能高
  • 可视化编辑器友好
  • 强大的比例、居中和适配能力
  • 缺点:简单界面略显繁琐

 

  1. FrameLayout(帧布局 / 框架布局)

核心特点:所有控件叠加在一起,默认左上角对齐,后添加的覆盖在先添加的之上。

  • 关键属性
  •  android:layout_gravity :控制控件在帧内的位置
  • 常用于配合  ViewPager 、 Fragment 
  • 适用场景
  • 图层叠加(如图片+角标、视频+控制栏)
  • Fragment 容器
  • 加载动画、弹窗遮罩
  • 优点:结构最简单、效率最高
  • 缺点:控件重叠,不适合复杂排版

 

三、四种常用布局快速对比

布局 排列方式 优点 缺点 推荐场景 LinearLayout 线性(横/竖) 简单高效 嵌套易层级深 简单规整界面 RelativeLayout 相对定位 灵活少嵌套 测量略耗时 中等复杂度UI ConstraintLayout 约束定位 功能最强、性能好 简单界面稍复杂 绝大多数现代UI FrameLayout 层叠叠加 最轻量高效 只能重叠 图层、Fragment容器