这是一个刚刚创建的android工程下的res文件夹。里面包括了主要的drawable,layout,menu,values。
关于后缀-hdpi,-xhdpi,-sw600dp,-v11后缀请参考
:http://developer.android.com/guide/practices/screens_support.html
:http://developer.android.com/guide/topics/resources/providing-resources.html
资源的命名规则和表2顺序一样,选择资源时也和表2的顺序一样。
资源的名字:<资源名>-<后缀名称>
后缀名称
1.MCC和MNC:移动和非移动网络
2.语言和区域:en
3.布局方向:ldrtl(默认从左到右)
4.最小宽度:sw<N>dp
5.可用宽度:w<N>dp
6.可用高度:h<N>dp
7.屏幕尺寸:smal,normal,large,xlarge
8.屏幕朝向:long,notlong
9.屏幕方向:port,land
10.UI模式:car,desk,televison,appliance
11.夜间模式:night,notnight。
12.屏幕像素密度:ldpi,mdpi,hdpi,xhdpi,nodpi,tvdpi
13.触屏类型:notouch,finger
14.键盘可用性:keysexposed,keyshidden,keyssoft
15.首选输入法:nokeys,qwerty,12key
16.导航键可用性:navexposed,navhidden
17.首选非触摸导航方式:nonav,dpad,trackball,wheel
18.平台版本:v3,v4,v7,v11
完整的资源包
文件夹名 | 作用 | 存放形式 | 重要性 | 注意 |
anim | 各种动画效果 | xml | 重要 | |
animator | 原创的动画 | xml | 中等 | 可以放在anim文件夹中 |
color | 定义各种状态下的颜色值 | xml | 很重要 | 颜色的状态值需要放在这个文件中 |
drawable | 图像,包括各种图片,图形,各种状态下图片的的配置文件,动画图像 | jpg,png,9.png.xml | 很重要 | |
layout | 界面布局 | xml | 很重要 | 布局文件重点是如何布局 |
menu | 菜单 | xml | 中等 | |
raw | 资源文件 | 流文件 | 中等 | 这个有区别于assets |
values | 各种自定义值,字符串,颜色,器 | xml | 很重要 | 如资源太多可以分多个xml文件存放 |
xml | xml配置文件,比如搜索,widget配置文件 | xml | 中等 |
资源文件
1.animator(各种动画)
2.anim
3.drawable(图片资源,包括png,9.png,jpg,gif,xml)4.color(颜色选择)
ColorStateList,
<selector>
<item android:state_pressed=”true” android:color=”#ffff0000”/>
<item android:color=”#ff00ff00”/>
</selector>
5.layout(布局)
<ViewGroup/View/include/merge>
6.menu(菜单)
7.raw(和assets区别,可以有文件夹,可以用id访问)
8.values(string,color,dimension,styles)
<bool></bool>
<integer></integer>
<integer-array></integer-array >
<string></string>
<string-array></string-array >
<color></color>
<dimen></ dimen>
<item type=”id” name=”name”></item >
<array>
<item></item>
<item></item>
</array>
<style>
<item name:”android:textSize”>20sp</item>
</style>
9.xml(preferencescreen,searchable, appwidget-provider)
drawable主要的形式:
1.bitmap file(png,jpg,gif)
2.xml bitmap
antialias:锯齿
ditherfilter:图片是否在拉伸的时候光滑
gravity:当图片比容器小的时候
mipMap:(这个真不理解)
titeMode:是否平铺
3.nine-patch file
4.xml nine-patch
<nine-patch/>
5.layerlist
<p></p><p></p><p></p><span style="white-space:pre"> </span><layer-list>
<item
android:botoom="””"
android:drawable:=""
android:left="””"
android:right="””"
android:top="””"/>
<item>
<bitmap>
</bitmap>
</item>
<item>
<nine-patch>
</nine-patch>
</item>
</layer-list><p></p><p></p><p></p>
6.statelist
<span style="white-space:pre"> </span><selector
android:constantSize=""
android:dither=""
android:variablePadding="" >
<item
android:drawable="””"
android:state_pressed="””">
</item>
</selector>
7.levellist:好像只有渐变的动画
</pre><p></p><pre name="code" class="html"><p> <span style="white-space:pre"> </span><level-list>
<item
android:drawable="””"
android:maxLevel="””"
android:minLevel="””">
</item>
</level-list>
</p>
8.inset:
<inset
android:drawable=""
android:insetBottom=""
android:insetLeft=""
android:insetRight=""
android:insetTop="" >
9.clip:
<span style="white-space:pre"> </span><clip
android:clipOrientation=""
android:drawable=""
android:gravity="" >
</clip>
10.scale
<scale
android:drawable=""
android:scaleGravity=""
android:scaleHeight=""
android:scaleWidth="" >
11.shape
<shape>
<corners
android:radius="integer"
android:topLeftRadius="integer"
android:topRightRadius="integer"
android:bottomLeftRadius="integer"
android:bottomRightRadius="integer" />
<gradient
android:angle="integer"
android:centerX="integer"
android:centerY="integer"
android:centerColor="integer"
android:endColor="color"
android:gradientRadius="integer"
android:startColor="color"
android:type=["linear" | "radial" | "sweep"]
android:useLevel=["true" | "false"] />
<padding
android:left="integer"
android:top="integer"
android:right="integer"
android:bottom="integer" />
<size
android:width="integer"
android:height="integer" />
<solid
android:color="color" />
<stroke
android:width="integer"
android:color="color"
android:dashWidth="integer"
android:dashGap="integer" />
</shape>
animation的主要形式:
progerty_animator.xml(有点费劲)
<set
android:ordering=["together" | "sequentially"](动画的顺序)>
<objectAnimator
android:propertyName="string"
android:duration="int"
android:valueFrom="float | int | color"
android:valueTo="float | int | color"
android:startOffset="int"
android:repeatCount="int"
android:repeatMode=["repeat" | "reverse"]
android:valueType=["intType" | "floatType"]/>
<animator
android:duration="int"
android:valueFrom="float | int | color"
android:valueTo="float | int | color"
android:startOffset="int"
android:repeatCount="int"
android:repeatMode=["repeat" | "reverse"]
android:valueType=["intType" | "floatType"]/>
<set>
...
</set>
</set>
tween animation
<?xml version="1.0" encoding="utf-8"?>
<set xmlns:android="http://schemas.android.com/apk/res/android"
android:interpolator="@[package:]anim/interpolator_resource"
android:shareInterpolator=["true" | "false"] >
<alpha
android:fromAlpha="float"
android:toAlpha="float" />
<scale
android:fromXScale="float"
android:toXScale="float"
android:fromYScale="float"
android:toYScale="float"
android:pivotX="float"
android:pivotY="float" />
<translate
android:fromXDelta="float"
android:toXDelta="float"
android:fromYDelta="float"
android:toYDelta="float" />
<rotate
android:fromDegrees="float"
android:toDegrees="float"
android:pivotX="float"
android:pivotY="float" />
<set>
...
</set>
</set>
interpolators
<?xml version="1.0" encoding="utf-8"?>
<InterpolatorName xmlns:android="http://schemas.android.com/apk/res/android"
android:attribute_name="value"
/>
Frame animation
<animation-list>
<item android:drawable=””
android:duration=””>
</animation-list>