您的位置:首页 > 移动开发 > Android开发

【android基础篇之一】Android应用程序目录结构

2013-10-23 10:59 465 查看
1.src目录

    src目录中存放的是该项目的源代码,其内部结构会根据用户所声明的包自动组织,该目录的组织方式为src/aaa/bbb/HelloWord.java,其中aaa/bbb为包名软件开发人员在项目开发过程中,大部分时间是对该目录下的源代码文件进行编写。
2.gen目录

    该目录下的文件全部都是ADT自动生成的,一般并不需要去修改,实际上该目录下只定义了一个R.java文件,该文件相当于项目的字典,为项目中用户界面、字符串、图片等资源都会在该类中创建其惟一的ID,当项目中使用这些资源时,会通过该ID得到资源的引用。
3.assets目录

   该目录用于存放项目相关的资源文件,例如文本文件等。assets目录下的资源文件不会在R.java自动生成ID,所以读取/assets目录下的文件必须指定文件的路径,如:file:///android_asset/xxx.3gp
。在程序中可以使用下面的方法得到文件的输入流InputStream对象:

InputStream inputStream = getResources.getAssets().open(“文件名”);
InputStream inputStream = getClass().getResourceAsStream("/assets/文件名");


4.res目录(不支持深度子目录)
在这个目录中我们可以存放应用使用到的各种资源,如xml界面文件,图片或数据。

res/drawable 专门存放png、jpg等图标文件。在代码中使用getResources().getDrawable(resourceId)获取该目录下的资源。

res/layout 专门存放xml界面文件,xml界面文件和HTML文件一样,主要用于显示用户操作界面。

res/values专门存放应用使用到的各种类型数据。不同类型的数据存放在不同的文件中,如下:

· strings.xml 定义字符串和数值,在Activity中使用getResources().getString(resourceId) 或getResources().getText(resourceId)取得资源。它的作用和struts中的国际化资源文件一样。

<?xml version="1.0"encoding="UTF-8"?>
<resources>
<stringname="xxxx">xxxx</string>
</resources>


· arrays.xml 定义数组。

<?xml version="1.0"encoding="utf-8"?>
<resources>
<string-arrayname="colors">
<item>red</item>
<item>yellow</item>
<item>green</item>
<item>blue</item>
</string-array>
</resources>


· colors.xml 定义颜色和颜色字串数值,你可以在Activity中使用getResources().getDrawable(resourceId) 以及getResources().getColor(resourceId)取得这些资源。例子如下:

<?xmlversion="1.0" encoding="UTF-8"?>
<resources>
<colorname="contents_text">#ff0000</color>
</resources>


· dimens.xml 定义尺寸数据,在Activity中使用getResources().getDimension(resourceId) 取得这些资源

<?xmlversion="1.0" encoding="UTF-8"?>
<resources>
<dimenname="key_height">50dip</dimen>
</resources>


· styles.xml 定义样式。

<?xml version="1.0"encoding="utf-8"?>
<resources>
<stylename="itcastText" parent="@style/Text">
<itemname="android:textSize">18sp</item>
<itemname="android:textColor">#0066FF</item>
</style>
</resources>


res/anim/存放定义动画的XML文件。

res/xml/ 在Activity中使用getResources().getXML()读取该目录下的XML资源文件。

res/raw/ 该目录用于存放应用使用到的原始文件,如音效文件等。编译软件时,这些数据不会被编译,它们被直接加入到程序安装包里。为了在程序中使用这些资源,你可以调用getResources().openRawResource(ID) , 参数ID形式:R.raw.somefilename。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: