《Android程序设计》一3.5 Resources

    xiaoxiao2021-04-19  326

    3.5 Resources

    Android应用把图像、图标和用户界面布局文件都放在名为res的目录中。res目录通常至少包括4个子目录,如下所示:layout包含Android用户界面XML文件,这个文件将在第7章详细介绍。drawable包含绘制相关的工具,如之前所描述的应用图标。raw保存了应用执行时可能以stream(流)方式读取的文件。原始文件是为运行的应用提供调试信息的一种很好的方式,不需要访问网络来检索数据。values包含应用在执行中要读取的值,或应用在某些使用中的静态数据,如对UI字符串的国际化。应用通过方法Context.getResour ces()和类R来访问这些目录下的资源。要访问res目录下的数据,传统的Java开发人员可能会考虑编写代码构建相关的资源文件路径,然后使用文件API打开这些资源。加载完资源字节后,应用开发人员可能会期望解析特定应用格式,从而能够访问每个应用都需要的各种项:图像、字符串和数据文件。预计到每个应用都会加载类似的信息,Android提供了一个工具,它集成在Eclipse中,通过它应用可以很容易地访问这些资源,并且也对项目资源进行了标准化。Eclipse和Android SDK一起创建了一个名为gen的目录,该目录中包含了名字永远都是R的类,这个类保存在名字在Android manifest中指定的Java应用包中。类R文件包含了多个字段,这些字段能够唯一标识应用包中的所有资源。开发人员调用方法Context.getResources可以获取包含有应用资源的android.content.res.Resources实例(可以直接调用类Context的方法,因为类Activity和类Service都是对类Context的扩展)。如下所示为开发人员调用Resource对象来获取期望类型的资源的一种方式:

    // code inside an Activity method String helloWorld = this.getResources().getString(R.string.hello_world); int anInt = this.getResources().getInteger(R.integer.an_int);

    你会发现在Android中,类R几乎无处不在,它使得对资源的访问变得非常容易,如访问UI布局文件的组件。


    最新回复(0)