Android应用资源---动画资源(Animation Resources)(二)
上一篇:http://www.zzzyk.com/kf/201204/127802.html
视图动画框架支持补间动画和帧动画,它们都能够在XML中声明。以下介绍如如何使用这两种方法:
补间动画
在XML中定义的动画,他执行诸如旋转、渐变、移动和图形的拉伸。
文件位置(FILE LOCATION):
res/anim/filename.xml,文件名被用于资源ID。
编译资源类型(COMPILED RESOURCE DATATYPE):
资源指向一个Animation对象
资源引用(RESOURCE REFERENCE):
在Java代码中:R.anim.filename
在XML中:@[package:]anim/filename
语法(SYNTAX):
<?xml version="1.0" encoding="utf-8"?>
<setxmlns: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>
这个文件必须有一个单独的根元素:既可以是<alpha>、<scale>、<translate>、<rotate>,也可以是持有一组其他动画元素的<set>元素(甚至使用嵌套的<set>元素)。
元素(ELEMENTS):
<set>
它是一组动画元素的集合,可以包括<alpha>、<scale>、<translate>、<rotate>元素,也可以是另一个<set>元素集合。它代表了一个AnimationSet对象。
属性(ATTRIBUTES):
android:interpolator
插补资源。它指定一个应用与动画的插补器。这个值必须引用特定的插补器资源(不是插补器类名)。可以利用来自平台的默认的插补器资源,也能够创建自己的插补器资源,更多的信息请参照稍后讨论的“插补器”。
android:shareInterpolator
布尔值,如果要在所有的子元素易做图享插补器,就要设置为”true”。
<alpha>
设定渐进或渐出动画,代表一个AlphaAnimation对象。
属性(ATTRIBUTES):
android:fromAlpha
浮点值。指定动画开始时,对象的透明偏移量。0.0是透明的,1.0是不透明的。
android:toAlpha
浮点值。指定动画结束时,对象的透明偏移量。0.0是透明的,1.0是不透明的。
关于<alpha>元素所支持的属性,请参看Animation类。
<scale>
设定尺寸的动画。可以指定图片从它的中心点向外扩展或向内收缩,这个图片的初始大小可以通过pivotX和pivotY属性来指定。例如,如果这些值都设定为0,那么动画对象从左上角开始向右下角生长。它代表了一个ScaleAnimation对象。
属性(ATTRIBUTES):
android:fromXScale
浮点值。动画开始,在X轴的偏移尺寸,1.0代表没有改变。
android:toXScale
浮点值。动画结束时,在X轴的偏移尺寸,1.0代表没有改变。
android:fromYScale
浮点值。动画开始,在Y轴的偏移尺寸,1.0代表没有改变。
android:toYScale
浮点值。动画结束时,在Y轴的偏移尺寸,1.0代表没有改变。
android:pivotX
浮点值。指定动画对象被缩放时,要保留的固定X轴的宽度。
androd:pivotY
浮点值。指定动画对象被缩放时,要保留的固定Y轴的宽度。
有关<scale>元素所支持的更多的属性,请参照Animation类。
<translate>
垂直或/和水平移动。以下属性都支持下列三种格式中任意一种格式的属性值:用“%”结尾的-100到100之间的数,指定相对与自身的百分比;用“%p”结尾的-100到100之间的数,指定相对于父窗口的百分比;不带有后缀的浮点数,指定移动的绝对值,它代表了一个TranslateAnimation对象。
属性(ATTRIBUTES)
android:fromXDelta
浮点值或百分比,它设定了动画开始时X轴的偏移量,既可以是相对与普通位置的像素值(如5),也可以是相对与元素自身宽度的百分比(如5%),还可以是相对于父窗口宽度的百分比(如5%p)。
android:toXDelta
浮点值或百分比,它设定了动画结束时X轴的偏移量,既可以是相对与普通位置的像素值(如5),也可以是相对与元素自身宽度的百分比(如5%),还可以是相对于父窗口宽度的百分比(如5%p)。
android:fromYDelta
浮点值或百分比,它设定了动画开始时Y轴的偏移量,既可以是相对与普通位置的像素值(如5),也可以是相对与元素自身宽度的百分比(如5%),还可以是相对于父窗口宽度的百分比(如5%p)。
android:toYDelta
浮点值或百分比,它设定了动画结束时X轴的偏移量,既可以是相对与普通位置的像素值(如5),也可以是相对与元素自身宽度的百分比(如5%),还可以是相对于父窗口宽度的百分比(如5%p)。
有关<translate>元素支持的更多属性,请参照Animation类。
<roate>
一个旋转动画。代表一个RotateAnimation对象。
属性(ATTRIBUTES)
android:fromDegrees
浮点值。指定动画开始时的角度。
android:toDegrees
浮点值,指定动画结束时的角度。
android:pivotX
浮点值或百分比,它是旋转中心的X轴坐标,既可以是相对于对象左边缘的像素值(如5),也可以是相对与对象左边缘的百分比(如5%),还可以是相对于父容器的左边缘的百分比(如5%p)。
android:pivotY
浮点值或百分比,它是旋转中心的Y轴坐标,既可以是相对于对象上边缘的像素值(如5),也可以是相对与对象上边缘的百分比(如5%),还可以是相对于父容器的上边缘的百分比(如5%p)。
有关<rotate>支持的更多属性,请参照Animation类。
例子
XML文件被保存在res/anim/hyperspace_jump.xml中:
<setxmlns:android="http://schemas.android.com/apk/res/android"
android:shareInterpolator="false">
<scale
android:interpolator="@android:anim/accelerate_decelerate_interpolator"
android:fromXScale="1.0"
android:toXScale="1.4"
android:fromYScale="1.0"
&nbs
补充:移动开发 , Android ,