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

Android学习笔记(三)Android项目文件详解

2015-05-05 11:30 288 查看

1. 组成分析




如上图所示,在文件结构中res目录、src目录、AndroidManifest.xml是android项目必须的。其他文件和目录都是可选的。

res目录存放Android项目的各种资源文件,layout存放界面布局文件,values存放各种XML格式的资源文件,例如字符创资源文件:strings.xml、颜色资源文件:colors.xml、尺寸资源文件:dimens.xml以及drawable-*的分辨率4中图片文件。

src目录保存java源文件的目录

AndroidManifest文件Android项目的系统清单文件,它用于控制Android应用的名称,图标,访问权限等整体属性。除此之外的Android应用的Activity、Service、ContentProvider、BroadcastRecevier这4大组件都需要在该文件中配置。

build.xml 这是Android为该项目提供的一个Ant生成文件,通过生成文件,开发者可以通过Ant来生成、安装Android项目。

bin用于存放生成的目标文件

gen用于保存自动生成的、位于Android项目包下的R.java文件

R.java文件,由aapt工具根据应用中的资源文件来自动生成的,可以把R.java理解成Android应用的资源字典。

aapt生成R.java文件的规则有两条:

1)每类资源对应R类的一个内部类

2)每个具体的资源项对应于内部类的一个public static final int类型的Field(成员变量)。



2、res目录说明

res目录说明

在该目录下存放了Android应用所需的全部资源,将不同的资源放在不同的文件夹内,可以方便AAPT工具来扫描这些资源,并生成对应的资源清单类R.java

例如/res/value/strings.xml文件

<resources>

    <string name="app_name">HelloWorld</string>
    <string name="action_settings">Settings</string>
    <string name="hello_world">Hello world!</string>

</resources>


1.在Java代码中使用资源

R.java中每个资源对应一个内部类,上面的string资源所对应的内部类。

public static final class string {
        public static final int action_settings=0x7f050001;
        public static final int app_name=0x7f050000;
        public static final int hello_world=0x7f050002;
    }


Java代码中通过R.string.app_name来获取strings.xml中app_name属性所对应的HelloWorld值。

在XML文件中使用资源

访问格式如下:@<资源对应的内部类的类名>/<资源项的名称>

例如访问app_name使用@string/app_name即可。

但有种情况例外,当我们在XML文件中使用标识符时,这些标识符无须使用专门的资源进行定义,直接在XML文档中按如下格式分配标志符即可。

@+id/<标识符代号>

如果希望在Java代码中获取该组件, 通过调用Activity的findViewById()方法即可实现。

如果希望在XML中获取该组件,则可以通过资源引用的方式来引用它。语法如下:@id/<标志符代号>
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: