文件结构:
src:
保存java源文件的目录
gen:
下面有一个R.java,创建时由appt工具自动生成,只读模式。对要用到的资源文件进行全局索引,res中的文件发生变化,R.java都会重新编译。对于res中的每一类资源,会在类R中对应一个内部类,包括att,color,dimen,drawable,id,layout,menu,string,style。每个资源项对应内部类的public static final int类型的变量。
1.java中引用资源
应用资源的方式如R.string.app_name 应用程序名,它是string这类资源。
2.xml中引用资源
@资源对应的内部类类名/资源项的名称
@string/app_name;
特例:标识符无需先进行定义可以这样使用android:id = "@+id/ok";接下来就可以使用了@id/ok
res:
存放各种资源文件名字不能有大写字母。
anim:xml动画文件
drawable:位图文件
layout:保存界面布局文件
values:保存格式xml格式的资源文件,如字符串:String.xml;colors.xml;dimens.xml;style.xml
menu:保存xml菜单文件
assets:
也是存放资源,但是不会在R.java生成索引。assets中的资源一般是android应用程序无法直接进行访问的,也是比较少访问的资源。
androidManifest.xml:
该文件定义了应用程序的每一个组件和它们的交互方式,指定应用程序的元数据(名称,图标),访问权限,所用到的服务等等。
主要属性:
package:应用程序的包名
android:icon="@drawable/ic_launcher":应用的图标
android:label="@string/app_name":应用的标签
节点:
user-sdk:指定要运行该程序所需要的sdk版本
user-feature:指定要运行该程序所需要的硬件要求
user-permission:声明程序需要的权限,如打电话、发短信等,这会在程序安装时告诉用户
application:指定应用程序的元数据(标题、图标、主题等),还包含四大组件节点如:
<activity
android:name="com.example.helloworld.MainActivity"
android:label="@string/app_name" >
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>