Android 项目目录结构
(1)res目录
- drawable-*dpi(比如ldpi,hdpi,mdpi,xdpi)
- 定义Android应用中需要的不同分辨率的资源文件
- values
- Android应用界面上需要显示各类文本标签的文字信息(strings,styles,colors)
(2)res资源目录
-
layout:Android定义的界面布局文件
-
Menu:存放系统菜单项和上下文菜单项
资源访问
-
Java代码访问
1
[<package_name>.]R.<resource_type>.<resource_name>
- R类为所在包的路径,一般省略
- resource_type: (strings,colors…)
- resource_name:定义的资源名字
-
XML配置文件访问资源
1
@[<package_name>.]<resource_type>/<resource_name>
字符串、颜色、尺寸
资源类型 | 默认名 | R类中的名称 |
---|---|---|
字符串资源 | /res/values/strings.xml | R.string |
颜色资源 | /res/values/colors.xml | R.color |
尺寸资源 | /res/values/dimens.xml | R.dimen |
Boolean常量 | /res/values/bools.xml | R.bool |
-
颜色
-
使用Color类的常量
-
1
int color = Color.BLUE;
-
-
使用Color.argb
-
1
int color = Color.argb(透明度,R,G,B);
-
-
在XML资源文件中定义颜色
-
1 2 3 4 5
<resources> <color name="mycolor"> #7fff00 </color> </resources> #号表示十六进制
-
res与assets
原理\目录 res assets 访问方式 映射到R.java,基于ID直接访问 通过资源管理器访问 目录结构 不可以建子目录 有目录结构 读取文件 通过Activity的getResources() InputStream is = getResources();
openRawResource(R.id.filename);
通过活动管理器读取 AssetManager am=getAssets();
InputStream is=am.open("filename");
-