一个android工程中,有各种类型的资源文件,大致可以分为以下几种:
1、??颜色?#RGB #ARGB #RRGGBB #AARRGGBB
颜色资源应该位于<resourses></resourses>标签下
路径res/values/colors.xml?名字可以随意
定义<color name=”cname”>value</color>
使用?Resourse.getValues.getColor
<?xml?version="1.0"?encoding="utf-8"?>
<resources>
<color?name="white">#FFFFFF</color>
<color?name="black">#000000</color>
</resources>
2、??字串
字串资源应该位于<resourses></resourses>标签下
路径res/values/strings.xml
定义<String??name=”sname”>value</String>
使用?Resourse.getValues.getString
<?xml?version="1.0"?encoding="utf-8"?>
<resources>
????<string?name="hello">Hello World, ResrouseTestActivity!</string>
????<string?name="app_name">ResrouseTest</string>
</resources>
?
3、??图片
图片资源一般使用png格式,使用其他格式的会出现各种问题,貌似不支持gif格式的图片,可是使用Movie来播放gif格式的图片
路径res/drawable
可以直接存放图片也可以是xml等配置文件(一般用于自定义组件)
使用?getDrawable
?
4、??图片的颜色
位于res/values/my_drawable.xml名字随意
?<?xml?version="1.0"?encoding="utf-8"?>
<resources>
<drawable?name="solid_red">#FF0000</drawable>
</resources>
定义用于填充一个组件的颜色值,即给view设置背景色。用法和drawable下的图片一样,其实没多少意义,使用颜色定义就ok了,目前我是这样认为的,可能有更好的优点,不过我没发现罢了,嘿嘿,continue...
5、??单位资源
单位资源应该位于<resourses></resourses>标签下
路径res/values/dimen.xml?名字可以随意
使用和String、color类似
<?xml?version="1.0"?encoding="utf-8"?>
<resources>
<dimen?name="dimen_name">2px</dimen>
<dimen?name="dimen_px">5px</dimen>
<dimen?name="dimen_pt">3pt</dimen>
<dimen?name="dimen_dp">3dp</dimen>
</resources>
6、??Nine-patch(可以拉伸的小图片)
支持图片的拉伸
???貌似就是所谓的png图片文件资源,图片在应用view的背景时,如果被设为background则会随view的大小变化做相应的拉伸和收缩,像ImageView这类设置src图片则不随view变化,按其自身大小显示部分或全部!
7、??菜单
菜单即可以从代码中实现也可以在资源文件中配置,这里就是要描述一下第二种
<?xml version="1.0" encoding="utf-8"?>
<menu xmlns:android="http://schemas.android.com/apk/res/android">
??? <item??
????????android:id="@+id/previous"??
????????android:title="@string/previous"??
????????android:enabled="false"? android:icon="@android:drawable/ic_media_previous"/>
??????? <item??
????????android:id="@+id/play_pause"??
????????android:title="@string/play"??
????????android:icon="@android:drawable/ic_media_play"/>
??? <item??
????????android:id="@+id/next"??
????????android:title="@string/next"??
????????android:icon="@android:drawable/ic_menu_next"/>
</menu>
8、??Layout布局
这个就是你经常看到的与用户交互的界面的xml文件,就是各个view的排列和嵌套,没什么好说的啦
9、??风格和主题、
风格主要是指view的显示风格?res/values/filename.xml
<?xml version=”1.0″ encoding=”utf-8″?>
<resources>
?? <style name=”SpecialText” [email protected]/Text”>
?? <item name=”android:textSize”>18sp</item>
?? <item name=”android:textColor”>#008</item>
</style>
</resources>
主题主要针对Activity等,?可以在Android Manifest中定义的<application>和<activity>元素将主题添加到整个程序或者某个?Activity,但是主题是不能应用在某一个单独的View里.风格可以自己定义也可以使用程序自带的或是继承已有的风格。
<?xml version="1.0" encoding="utf-8"?>
<resources>
<style name="CustomTheme">
<item name="android:windowNoTitle">true</item>
<item name="windowFrame">@drawable/screen_frame</item>
<item name="windowBackground">@drawable/screen_background_white</item>
<item name="panelForegroundColor">#FF000000</item>
<item name="panelBackgroundColor">#FFFFFFFF</item>
<item name="panelTextColor">?panelForegroundColor</item>
<item name="panelTextSize">14</item>
<item name="menuItemTextColor">?panelTextColor</item>
<item name="menuItemTextSize">?panelTextSize</item>
</style>
</resources>
?
10、??????????????动画
动画资源分为两种,一是实现图片的translate、scale、rotate、alpha四种变化。还可以设置动画的播放特性;另一种是帧动画,逐帧播放设置的资源
先说一下第一种
Res/anim/filename.xml
<set xmlns:android="http://schemas.android.com/apk/res/android">??????????????
??????????????????? <translate android:interpolator="@android:anim/accelerate_interpolator"
???????????????????????????????????????? android:fromXDelta="0" android:toXDelta="200" android:fromYDelta="0"
???????????????????????????????????????? android:toYDelta="180" android:duration="2000" />
??????????????????? <scale android:interpolator="@android:anim/accelerate_interpolator"
???????????????????????????????????????? android:fromXScale="1.0" android:toXScale="2.0" android:fromYScale="1.0"
???????????????????????????????????????? android:toYScale="2.0" android:pivotX="150%" android:pivotY="150%"
???????????????????????????????????????? android:duration="2000" />
??????????????????? <alpha android:fromAlpha="1.0" android:toAlpha="1.0"
???????????????????????????????????????? android:duration="@android:integer/config_mediumAnimTime" />
??????????????????? <rotate ....各个属性></rotate>
??????????????????? <Interpolator >可以使用其子类和属性定义动画的运行方式,先快后慢,先慢后快等</Interpolator>
</set>?
具体参数的用法,大家可以自己查资料
下面是第二种资源
<animation-list xmlns:android=”http://schemas.android.com/apk/res/android”
android:oneshot=”true”>
<item android:[email protected]/rocket_thrust1″ android:duration=”200″ />
<item android:[email protected]/rocket_thrust2″ android:duration=”200″ />
<item android:[email protected]/rocket_thrust3″ android:duration=”200″ />
</animation-list>
?
?
1. 相关文件夹介绍? ???在Android项目文件夹里面,主要的资源文件是放在res文件夹里面的。assets文件夹是存放不进行编译加工的原生文件,即该文件夹里面的文件不会像xml,java文件被预编译,可以存放一些图片,html,js, css等文件。在后面会介绍如何读取assets文件夹的资源! ? ???res文件夹里面的多个文件夹的各自介绍(来自网上的Android开发指南中文版内容):
|
http://elena-java.iteye.com/blog/741311