
Android Resources即Android资源文件。Androi列过创挥d的资源文件,是由目录结构,Xml格式的文件来自,和纯数据文件构成。An纸年短droid的资源文件,覆盖面超级广,朝年跟只要是和界面相关的,都可以用资源文件表示
- 中文名 Android资源文件
- 作 用 目录结构
- 系 统 android
- 语言类型 java
定义
来自Android Resources即Android资源文件。Android的资源文件,是由目录结构,Xml格式的文件,和纯数据文件构成。Andr360百科oid的资源文件,覆盖面超级广,只要是和界面相关的,都可以用资源文件表示,比如:UI的样式,菜单,配置文件,各种描述性字符串,图片,音频视频文件,动画,颜色,尺寸,风格和样式等。
资源文件结构
Android资源文件亚七理安倍觉烧的一般目录结构可以用下面的图来表示:
资源文件使用
我们可以在代码中直接使用资源文件,如:
setContentView(R.layout.main);
Toast.makeText(this, R.string.app_error, Toast.LENGTH_LO升状害上述练席NG).show();
资源之间也可以互相引用,如:
attribute="@[packagename:]resourcetype/resourceidentifier"
使序用示例
res减谁空散视培早印oureces就是res目录下的那些目录和文件,常用的有:
res/drawable/ 用来存放图片文件
res/l来自ayout/ 用来存放布局定义文件
res/values/ 用来存放一些变量、参数等文件
android允许你定义多个string xml文件 这些resource位于/res/value目录下,文件名是任意的
这是一个普通的字符串资源文件
Xml代码
<?xml version=他则李卷等可球"1.0" encoding="utf-8"?>
<resources>
<stri360百科ng name="hello">Hello World, SendMessage!</s顺tring>
<string name="app_name">SMS</string>
</resources>
当这个文件被创建或修改了,eclipse的adt插件会自动更新你源代码中一个叫R.java的文件
R.java
在R体营助调训真候.java的注释部分, 有这样一段话:"AUTO-GENERATE FILE. DO NOT MODIFY",这个文件是自动生成的,不要修改。
项 这个文件是在程序编译过程中由aapt(Android Asset Packaging Tool) 自动生成
这个文件中的属性都是public static final的,所以可以直接在Java代码中引用,每个属性都代表一个资源,看起来就像为每个资源都定义了一个ID,然后通过这个ID来访问资源
所有乐探妈准负额满销良然的资源文件都被编译进最后生成的二进制包中,这样能够带来很高的性能和效率
string的定义非常简单
Xml代码 <string name="key">value</s些程土工斤灯素青波矿tring>
value可以只普通的字符串也可以是html代码,或者是包含单引号,双引号的字符串
Xml代码 <string name="quoted_string">"quoted'string"</s试tring>
<string name="double_quoted_string">\"double quotes\"</string>
<string name="ta农乱位演规跑款作深岁rget_string">hello <b><i>android</底律庆慢型对手较更i></b>,you are very younger!</string>
在其他的android xml文件中引用含有html标记的值和引用普通的string一样
Xml代码 <TextV破升委iew android:text="@string/target_string"
android:id="@+id/t置说执肉较年以注菜ext3"
android:layout_width="wrap_content"
android:layout_height="wrap_content"></TextView>
在java息超亚座持流程序中应用这些值可以这样
Java代码 thi务是斤s.getResources().getString(R.string.target_string);
dimension resources
android中定义的dimension单位有以下这些
px: pixel(像素)
in:inches(备英寸)
mm:mi滑介渐威医议尼今llimeter(毫米)
pt:point(点)
dp:density密度
sp:刻度
定义dimension可定义string一样
Xml代码 <resources>
<dimen name="mysize_in_pixels">1px</dimen>
<dimen name="mysize_in_dp">1dp</dimen>
<dimen name="medium_size">100sp</dimen>
</resources>
你可以在style中或者定位android UI 中使用这些dimension资源
如果在java中需要使用这些dimensions可以调用getResources方法
Java代码 this.getResources().getDimension(R.dimen.mysize_in_pixels);
在ml文件中使用dimension
Xml代码 <TextView android:text="@string/target_string"
android:id="@+id/text3"
android:layout_width="wrap_content"
android:textSize="@dimen/medium_size" android:layout_height="wrap_content"></TextView>
转载请注明出处安可林文章网 » Android Resources