Android应用的res目录是一个特殊的项目,各项目里存放了android应用所用的全部资源,包括图片资源、字符串资源、颜色资源、尺寸资源等。
Android按照约定,将不同的资源放在不同的文件夹内,这样可以方便的让AAPT工具来扫描这些资源,并为他猛 生成对应的资源清单类:R.java。
以/res/value/string.xml文件来说,该文件的内容十分简单,它只是定义了一条一条的子字符串常量,例如
<?xml version="1.0" encoding="utf-8"?>
<resources>
<string name ="app_name">HelloWord</String>
</resources>
上面的资源文件中定义了一个字符串常量,常量的值为HelloWord,该涨幅创常量的名称为app_name。一旦定义了这份资源文件之后,Android项目允许分别在java代码,XML代码中使用者这份资源文件总的字符串资源。
1.在java代码中使用字符串资源,AAPT会为Android项目自动生成一份R.java文件,R类里为每份资源分别定义一个内部类,其中每个资源项对应与内部类里一个int类型的Field。例如上面的资源文件对应于R.java中的如下内容:
public static final class string {
public static final int app_name = 0x7f040000;
}
借助于AAPT自动生成的R类的帮助,Java代码中可通过R.string.app_name来引用到“HelloWord”字符串常量。
2.在XML文件中使用资源
在XML文件中使用资源更加简单,只要按如下格式来访问即可:
@<资源对应的内部类的类名>/<资源项目的名称>