一、Android 资源类型全列举
Android资源统一放在项目 res 文件夹下,系统会自动生成资源ID,方便代码调用,还能适配不同设备。以下是常用资源目录及用途,直白分类好记忆:
- 界面相关资源
layout:布局资源,用来搭建页面、摆放控件
drawable:存放图片、矢量图、自定义形状等素材
mipmap:专门存放应用启动图标
font:自定义字体文件 - 配置相关资源
values:存放字符串、颜色、尺寸、样式等通用配置
color:控件不同状态(按下、选中)的颜色配置 - 动画相关资源
anim:基础补间动画配置
animator:属性动画,功能更全面
interpolator:控制动画快慢节奏 - 其他常用资源
menu:页面菜单配置
xml:各类自定义配置文件
raw:存放音频、视频等原生文件
二、布局资源四大常用类型详解
布局资源存放在res/layout目录下,以xml格式编写,用来搭建Android页面、规整控件位置,下边详解日常开发最常用的四种布局。
- LinearLayout(线性布局)
最基础的布局,控件只能按照垂直或者水平单一方向依次排列,上手难度极低,还能通过权重按比例分配控件大小。
核心属性:
android:orientation:设置排列方向,vertical垂直、horizontal水平
android:layout_weight:控件权重,用来分配剩余空间
android:gravity:控制子控件整体对齐方式
适用场景:简单表单、登录页、列表项、竖向/横向规整排列的页面 - RelativeLayout(相对布局)
控件以父布局或者其他控件为参照物进行定位,不用多层嵌套就能实现错落排版,能有效减少布局层级。
核心属性:
相对于父布局:居中、顶部对齐、底部对齐
相对于其他控件:置于某控件上方、下方、左侧、右侧
适用场景:控件位置相互关联的页面,比如个人中心、详情页 - ConstraintLayout(约束布局)
Android官方推荐的首选布局,通过控件之间的约束关系定位,全程扁平化无嵌套,性能最优,适配各类复杂页面。
核心属性:
控件上下左右与父布局/其他控件对齐约束
宽高比、间距、权重等高级适配属性
适用场景:所有复杂界面、电商首页、需要多设备适配的页面 - FrameLayout(帧布局)
结构最简单的布局,所有控件默认叠加在一起,后写的控件会覆盖在先写的控件上方,可设置对齐方式调整位置。
核心属性:android:layout_gravity,控制子控件在布局内的位置
适用场景:图层叠加、Fragment容器、加载遮罩、单控件展示