res资源目录简介¶
更新日期 2022-9-30
- 2022-9-30 更新说明
简单介绍Android工程中的资源目录(resources),res
。
资源¶
资源是指代码使用的附加文件和静态内容,例如位图、布局定义、界面字符串、动画说明等。
本文中我们关注的是这一个目录。
Android里的资源(res资源)指的是什么?
资源是指代码使用的附加文件和静态内容,例如位图、布局定义、界面字符串、动画说明等。
把资源放进对应的目录后,可使用在项目R
类中生成的资源ID来访问这些资源。形如R.drawable.icon
,R.layout.main_activity
。
R
类是自动生成的。代表resources。
分组资源类型¶
将各类资源放入项目 res/
目录的特定子目录中。
子目录的名字特别重要。我们把不同的资源放到不同的子目录中(res子目录)。参考下面的表格。
目录 | 资源类型 |
---|---|
animator/ | 用于定义属性动画的 XML 文件。 |
anim/ | 用于定义渐变动画的 XML 文件。(属性动画也可保存在此目录中,但为了区分这两种类型,属性动画首选 animator/ 目录。) |
color/ | 用于定义颜色状态列表的 XML 文件。 |
drawable/ | 位图文件(.png、.9.png、.jpg、.gif)或编译为以下可绘制对象资源子类型的 XML 文件: 位图文件、九宫格(可调整大小的位图)、状态列表、形状、动画可绘制对象、其他可绘制对象。 |
mipmap/ | 适用于不同启动器图标密度的可绘制对象文件。应用图标放这里。 mipmap后面跟着的dpi类别,比如 hdpi mdpi ,里面的图标尺寸大小是不同的。可以参考默认图标的大小,来切App的图标。如果要省事,可以用一个图标复制进各个目录中。 |
layout/ | 用于定义用户界面布局的 XML 文件。放layout文件。 |
menu/ | 用于定义应用菜单(如选项菜单、上下文菜单或子菜单)的 XML 文件。 |
raw/ | 需以原始形式保存的任意文件。如要使用原始 InputStream 打开这些资源,请使用资源 ID(即 R.raw.filename)调用 Resources.openRawResource()。 但是,如需访问原始文件名和文件层次结构,则可以考虑将某些资源保存在 assets/ 目录(而非 res/raw/)下。assets/ 中的文件没有资源 ID,因此您只能使用 AssetManager 读取这些文件。 |
values/ | 包含字符串、整型数和颜色等简单值的 XML 文件。其他 res/ 子目录中的 XML 资源文件会根据 XML 文件名定义单个资源,而 values/ 目录中的文件可描述多个资源。对于此目录中的文件, 但是,您可能需要将独特的资源类型放在不同的文件中,使其一目了然。 例如,对于可在此目录中创建的资源,下面给出了相应的文件名约定: arrays.xml:资源数组(类型数组)。 colors.xml:颜色值。 dimens.xml:尺寸值。 strings.xml:字符串值。 styles.xml:样式。 |
xml/ | 可在运行时通过调用 Resources.getXML() 读取的任意 XML 文件。各种 XML 配置文件(如可搜索配置)都必须保存在此处。 |
font/ | 带有扩展名的字体文件(如 .ttf、.otf 或 .ttc),或包含 |
注意:切勿将资源文件直接保存在 res/ 目录内,因为这样会造成编译错误。
最开始阶段,我们接触比较多的是layout
目录。如果要添加一些图片,可以直接放进drawable
目录。
关于drawable
目录,可以参考drawable shape的绘制和使用。
修改应用图标,应该放进mipmap
对应的目录。例如mipmap-hdpi
里的图标是72x72像素的,mipmap-mdpi
是48x48像素的。
图省事的话,拿一个图标,分别复制进mipmap的所有dpi目录里,一定要统一文件名,比如ic_your_launcher.png
。
然后在清单文件AndroidManifest.xml
中,修改icon。
后面如果我们要定义Button,TextView的一些样式,比如设置颜色,背景。会接触到drawable
目录。
参考文档应用资源概览
本站说明
一起在知识的海洋里呛水吧。广告内容与本站无关。如果喜欢本站内容,欢迎投喂作者,谢谢支持服务器。如有疑问和建议,欢迎在下方评论~