万书网 > 文学作品 > Android从入门到精通 > 第109页

第109页



表9.10 定义缩放动画时常用的属性





属 性  描 述

android:interpolator  用于控制动画的变化速度,使得动画效果可以匀速、加速、减速或抛物线速度等各种速度变化,其属性值见表9.8

android:fromXScale  用于指定动画开始时水平方向上的缩放系数,值为1.0表示不变化

android:toXScale  用于指定动画结束时水平方向上的缩放系数,值为1.0表示不变化

android:fromYScale  用于指定动画开始时垂直方向上的缩放系数,值为1.0表示不变化

android:toYScale  用于指定动画结束时垂直方向上的缩放系数,值为1.0表示不变化

android:pivotX  用于指定轴心点的X坐标

android:pivotY  用于指定轴心点的Y坐标

android:repeatMode  用于设置动画的重复方式,可选值为reverse(反向)或restart(重新开始)

android:repeatCount  用于设置动画的重复次数,属性值以是代表次数的数值,也可以是infinite(无限循环)

android:duration  用于指定动画持续的时间,单位为毫秒

例如,定义一个以图片的中心为轴心点,将图片放大2倍的、持续时间为2秒钟的动画,可以使用下面的代码:




android:fromYScale="1"



android:toXScale="2.0"



android:toYScale="2.0"



android:pivotX="50%"



android:pivotY="50%"



android:duration="2000"/>

4.  平移动画(Translate  Animation)

平移动画就是通过为动画指定开始时的位置、结束时的位置以及持续时间来创建动画。同透明度渐变动画一样,也可以在XML文件中定义平移动画资源文件,基本的语法格式如下:




android:interpolator="@[package:]anim/interpolator_resource">






android:fromXDelta="float"



android:toXDelta="float"



android:fromYDelta="float"



android:toYDelta="float"



android:repeatMode="reverse|restart"



android:repeatCount="次数|infinite"



android:duration="Integer"/>





在上面的语法中,各属性说明如表9.11所示。

表9.11 定义平移动画时常用的属性





属 性  描 述

android:interpolator  用于控制动画的变化速度,使得动画效果可以匀速、加速、减速或抛物线速度等各种速度变化,其属性值见表9.8

android:fromXDelta  用于指定动画开始时水平方向上的起始位置

android:toXDelta  用于指定动画结束时水平方向上的起始位置

android:fromYDelta  用于指定动画开始时垂直方向上的起始位置

android:toYDelta  用于指定动画结束时垂直方向上的起始位置

android:repeatMode  用于设置动画的重复方式,可选值为reverse(反向)或restart(重新开始)

android:repeatCount  用于设置动画的重复次数,属性可以是代表次数的数值,也可以是infinite(无限循环)

android:duration  用于指定动画持续的时间,单位为毫秒

例如,定义一个让图片从(0,0)点到(300,300)点、持续时间为2秒钟的动画,可以使用下面的代码:




android:fromXDelta="0"



android:toXDelta="300"



android:fromYDelta="0"



android:toYDelta="300"



android:duration="2000">





9.4.3 范例1:忐忑的精灵

例9.16   在Eclipse中创建Android项目,名称为9.16,使用逐帧动画实现一个忐忑的精灵动画。(实例位置:光盘\TM\sl\9\9.16)

(1)在新建项目的res目录中,首先创建一个名称为anim的目录,并在该目录中添加一个名称为fairy.xml的XML资源文件,然后在该文件中定义组成动画的图片资源,具体代码如下:



































(2)修改新建项目的res\layout目录下的布局文件main.xml,将默认添加的TextView组件删除,然后为默认添加的线性布局管理器设置android:id和android:background属性。将android:background属性为步骤(1)中创建的动画资源,修改后的代码如下:




android:layout_width="fill_parent"



android:layout_height="fill_parent"



android:background="@anim/fairy"