一、Android 资源类型列举
Android 中的资源(Resources)是程序中使用的外部静态文件,系统提供专门的管理方式。常见资源类型如下:
- 布局资源(Layout)对应文件夹:
res/layout/用于定义界面结构,如各种布局、控件摆放。 - 字符串资源(Strings)对应文件夹:
res/values/strings.xml存放文字内容,支持多语言切换。 - 颜色资源(Colors)对应文件夹:
res/values/colors.xml定义界面使用的颜色值。 - 尺寸资源(Dimens)对应文件夹
res/values/dimens.xml定义控件大小、间距等尺寸。 - 样式与主题资源(Styles/Themes)对应文件夹:
res/values/styles.xml统一管理界面风格、主题样式。 - 图片资源(Drawables)对应文件夹:
res/drawable/、res/mipmap/存放图片、图标、矢量图、形状等。 - 动画资源(Animations)对应文件夹:
res/anim/定义视图动画、属性动画。 - 菜单资源(Menu)对应文件夹:
res/menu/定义选项菜单、上下文菜单。 - 原始文件资源(Raw)对应文件夹:
res/raw/存放音频、视频、文本等原始文件。 - 布局资源 包括多种界面布局容器。
二、布局资源的四种常用类型详细介绍
1. LinearLayout 线性布局
(1)基本介绍:LinearLayout 是最基础、最常用的布局,能够将内部子控件按照水平方向或垂直方向依次排列。
(2)核心属性
android:orientation="vertical":垂直排列(从上到下)android:orientation="horizontal":水平排列(从左到右)android:layout_weight:按比例分配剩余空间
(3)特点
- 结构简单、使用方便
- 只能沿一个方向排列
- 适合整齐、有序的界面
(4)使用场景:登录界面、按钮栏、设置列表、表单等。
2. RelativeLayout 相对布局
(1)基本介绍:RelativeLayout 是一种非常灵活的布局,子控件的位置可以相对于其他控件或父布局来确定。
(2)核心属性
android:layout_below="@id/xxx":在某控件下方android:layout_toRightOf="@id/xxx":在某控件右侧android:layout_centerInParent="true":在父布局居中
(3)特点
- 自由度极高,可实现复杂界面
- 减少布局嵌套,性能更好
- 适合不规则界面
(4)使用场景:个人中心、商品详情页、复杂 UI 页面。
3. TableLayout 表格布局
(1)基本介绍:TableLayout 采用行和列的形式排列控件,类似 Excel 表格,结构整齐规范。
(2)结构说明
- 根布局:
<TableLayout> - 每一行:
<TableRow> - 每一行内部的控件自动成为一列
(3)特点
- 行列对齐、整齐美观
- 列数由最多控件的行决定
- 自动拉伸和收缩
(4)使用场景计算器、日历、报表、表格类界面。
4. 自定义布局 / 霓虹灯效果布局(ViewGroup / 绘制类布局)
(1)基本介绍:不属于系统基础布局,而是通过自定义 ViewGroup 或画布绘制实现的特殊布局,常用于展示自定义 UI、动画、特效。
(2)特点
- 高度自由,可完全自定义界面
- 可以绘制图形、颜色、动画
- 适合特殊视觉效果
(3)使用场景:霓虹灯效果、仪表盘、自定义控件、游戏 UI。
三、四种布局对比总结
| 布局名称 | 排列方式 | 优点 | 适用场景 |
|---|---|---|---|
| LinearLayout | 水平 / 垂直直线 | 简单、易用、高效 | 按钮栏、表单、列表 |
| RelativeLayout | 相对位置 | 灵活、可实现复杂界面 | 不规则页面、详情页 |
| TableLayout | 表格行列 | 整齐、自动对齐 | 计算器、表格、报表 |
| 自定义布局 | 自由绘制 | 可实现特效、高度定制 | 动画、霓虹灯、自定义 UI |