1-res目录存放资源不可以任意创建目录否则不能读取
2-res和assets目录都可以存放资源文件它们的区别
3-raw与assets都存放资源文件他们的区别
4-drawble图像资源多版本适配不同屏幕
5-资源目录命名规则优先级
6-在stringxml字符串资源中是否可以有单引号支持使用哪几个标签
7-drawable中的图像资源有哪些
8-color中颜色资源的不同形式
9-dip和px的转换
10-resources数组资源的获取
1-res目录存放资源,不可以任意创建目录,否则不能读取。
2-res和assets目录都可以存放资源文件,它们的区别。
name
获取方式
建立目录
压缩
Res目录
获取res目录中的资源需要使用R类中的资源IDgetresource().getstring.(R.string.hello)
不能任意命名目录,不能建立二级目录和多级目录
除了raw子目录,其他均会被编译为二进制
Assets目录
获取assets目录中的资源可以直接使用文件名getresource.getAssets.opem(filneme)
可以建立为任意多级目录
不会被编译为二进制
3-raw与assets都存放资源文件,他们的区别。
(4.4.2.1)android raw与assets区别
name
获取方式
目录
压缩
读取方式
Res/raw目录
res/raw中的文件会被映射到R.java文件中,访问的时候直接使用资源ID即R.id.filename
不可以有目录结构
打包后会原封不动的保存在apk包中,不会被编译成二进制
InputStream is = getResources().openRawResource(R.id.filename);
Assets目录
assets文件夹下的文件不会被映射到R.java中,访问的时候需要AssetManager类
可以有目录结构
同上
getAssets.opem(filneme)
4-drawble图像资源多版本:适配不同屏幕
name
density
标准分辨率
XX
drawble
默认
drawable-xhdpi
2
720*960
drawble-hdpi
1.5
480*640
drawble-mdpi
1
320*480
drawable-ldpi
0.75
240*320
5-资源目录命名规则优先级
语言>屏幕尺寸>屏幕方向>夜间模式>屏幕密度>平台版本
6-在string.xml字符串资源中是否可以有单引号”’”,支持使用哪几个标签?
(1)可以有单引号,但不能将单引号直接加到字符串资源中,需要使用双引号”’,”将带单 引号的字符串资源括起来:”this’s Mine”。或者使用转义符\:this\’s Mine
(2)支持以下三个标签:粗体斜体下划线
7-drawable中的图像资源有哪些?
name
类别
根节点
子节点或示例
图像状态资源
控制类
< selector >
< item android:state_XXX=”true” android:drawable=”@drawable/XX” / >
图像级别资源
控制类
< level-list >
< item android:drawable=”@drawable/lamp_off” android:minLevel=”6” android:maxLevel=”10” />
淡入淡出资源
控制类
< transition >标签中只能有两个< item >标签
< item android:drawable=”@drawable/lamp_off” / > < item android:drawable=”@drawable/lamp_on” / >
嵌入图像资源
控制类
inset如果显示的图像要求小于装载图像的视图
< inset xmlns:android=”http://schemas.android.com/apk/res/android” android:drawable=”@drawable/background” android:insetTop=”50dp” android:insetLeft=”50dp” android:insetBottom=”50dp” android:insetRight=”50dp” />
剪切图像资源
显示类
< clip >
< clip xmlns:android=”http://schemas.android.com/apk/res/android” android:drawable=”@drawable/progress” android:clipOrientation=”horizontal” android:gravity=”left” />
外形资源
显示类
< shape >
< shape xmlns:android=”http://schemas.android.com/apk/res/android”android:shape=”rectangle”> < !– 定义渐变色(从左下角到右上角绘制渐变色) – > < gradient android:startColor=”#FFFF0000” android:endColor=”#80FF00FF”android:angle=”45” /> < !– 定义控件内容到边界的距离(到四条边界的距离都是7) –> < padding android:left=”7dp” android:top=”7dp”androidandroid:right=”7dp”android:bottom=”7dp” /> < !– 定义边框线(边框线宽度是2,颜色为白色) –> < stroke android:width=”2dp” android:color=”#FFF” /> < !– 定义圆角(圆角半径是8) –> < corners android:radius=”8dp” /> < /shape>
8-color中颜色资源的不同形式
#RGB——————#FBA
#ARGB—————#0FBA
#RRGGBB———-#FFBBAA
#AARRGGBB——#00FFBBAA
9-dip和px的转换
(4.1.6)dip, dp, px, sp区别
px为像素,dip是设备独立像素,和屏幕密度无关
dip(value)=(int) (px(value)/1.5 + 0.5)
10-resources数组资源的获取
或者是
//示例代码
String[] planets = res.getStringArray(R.array.planets_array);