对于Android来说,资源的引用都是通过特定的配置文件来进行管理的,这有利于资源的统一,整合以及调用。而在Android中,不只图像、音频这些为资源,字符串也是作为一种资源在被管理。Android操作系统则是通过XML文件来将这些资源进行关联操作,统一管理。
6.1 资源类型
资源类型 |
所需目录 |
文件名 |
XML标记 |
字符串 |
/res/values/ |
strings.xml |
<string> |
复数字符串 |
/res/values/ |
strings.xml |
<plurals>、<item> |
字符串数组 |
/res/values/ |
strings.xml |
<string-array> <item> |
布尔型 |
/res/values/ |
bools.xml |
<bool> |
颜色 |
/res/values/ |
colors.xml |
<color> |
颜色状态表 |
/res/color/ |
这类文件一般是用来描述组件的状态改变的 |
<selector> <item> |
尺寸 |
/res/values/ |
Dimens.xml |
<dimen> |
整形 |
/res/values/ |
integers.xml |
<integer> |
整形数组 |
/res/values/ |
integers.xml |
<integer-array> <item> |
混合类型数组 |
/res/values/ |
Arrays.xml |
<array>、<item> |
简单Drawable图形 |
/res/values/ |
drawables.xml |
<drawable> |
图像 |
/res/drawable/ |
单个图片的文件名,根据自己的需要决定名字 |
支持图像文件的文件名 |
补间动画 |
/res/anim/ |
根据需要自行定义 |
<set>、<alpha>、 <scale>、<translate>、 <rotate> |
逐帧动画 |
/res/drawable/ |
根据需要自行定义 |
<animaton-list>、 |
菜单 |
/res/menu/ |
根据需要自行定义 |
<menu> |
XML文件 |
/res/xml/ |
根据需要自行定义 |
自定义 |
原始文件 |
/res/raw/ |
自定义 |
自定义 |
布局 |
/res/layout/ |
main.xml等 |
多种,布局定义 |
样式和主题 |
/res/values/ |
styles.xml、themes.xml |
<style> |
表6.1.1 资源类型表
注意:这些文件的所有管理都是通过R.java来进行操控的,一旦这些文件中的某个路径不正确,那么很可能会导致R.java文件的生成错误,无法产生R.java文件。这也是为什么有些人会出现无法找到R.class的错误缘故。
另:所属目录必须为特定的,因为资源名称继承自特定资源的文件名。
6.2 java访问资源
对于利用java代码直接访问资源,可以通过getResources()方法来实现。
6.3 使用资源
除了普通使用资源,如上6.2所述的意外,在xml中使用资源的时候,特别是字符串类型的资源,可以通过HTML的方式,对字符串进行修饰。譬如:<b>、<i>、<u>这三种方式可以实现字符串的加粗、斜体、下划线的效果。
除了上述的使用外,还可以创建带有格式化的字符串,不过当你需要加粗、斜体和下划线标记的时候需要进行转义。
例如:
<string name="testWord">Hello world!The year <u>%1$d</u> and the month <u>%2$d</u>! I\'m <i>%3$s</i>.</string>
注意:如果想要将他们转化为正常文本,还需要将返回过来的字符串通过Html.fromHtml();方法转化才行。
其他资源的使用大同小异,在这里就不一一详述。具体的之后会有所涉及到。
6.4 小结
总结了一些大概的资源引用,具体的在之后的章节中述说。