android之animation(1)

android之animation(一)animations:动画。新知识点介绍:animations是一系列的动画效果,这些效果可以运用在

android之animation(一)

animations:动画。

新知识点介绍:animations是一系列的动画效果,这些效果可以运用在绝大数控件上面。

animations总的说来可以分为两类:

1、Tweened Animations:包括旋转、移动、伸展、淡入淡出等效果。

2、Frame-by-Frame Animations:这个可以创建一个Drawable序列,可以一个一个的显示。


这次介绍第一类动画效果:

这些动画有一些公共的函数如下:

setDuration(float time)动画执行时间;

setFillAfter(boolean b)是否保持动画结束时状态;

setFillBefore(boolean b)是否返回动画开始状态,当动画结束后;

setStartOffset(long time)经过多少时间动画开始执行;

setRepeatCount(int i)动画重复次数(默认为0)。


设置动画有两种方法,直接在代码中设置;或者在xml中设置。第一种方法比较容易理解,符合开发人员习惯;第二中方法比较容易进行二次开发,代码少。


一、代码中设置:

1、rotate:旋转。表示一个控件绕着一个点做旋转(平面旋转)。这个旋转是围绕一个点,而这个点是由百分比决定的,比如相对于自身时x为0.5,y为0.5,那么这个点就是该控件的中心;如果x为1,y为1,那么这个点就是控件的右下角;相对父控件时x为0.5,y为0.5,那么这个点就是该父控件的中心。

看代码:


?

?

代码解释:scale ,伸展。参数依次是 x的原始百分比;伸展后x的百分比;y的原始百分比;伸展后y的百分比;

动画时间。


b、alpha,淡入淡出。


<?xml version="1.0" encoding="utf-8"?>

?


代码解释:

开始角度;最终角度;旋转点x的百分比;旋转y的百分比;动画时间。

这里要说下,第三个和第四个参数配置有三中:

android:pivotX="50",这个是绝对位置,相对于整个屏幕的位置。

android:pivotX="50%",这个是相对自身的比例。

android:pivotX="50%p",这个是相对父控件的比例。


d、translate : 移动。


?

?

?

代码解释:


移动前x的位置;移动后x的位置;移动前y的位置;移动后y的位置;时间

他的这个配置和上面的rotate一样,也有三种方法。不再赘述。


3、在代码中使用xml:

由于使用所有的xml都类似,我们只列举一种:


Animation translateanimation = AnimationUtils.loadAnimation(Animation1Activity.this, R.anim.translate);imageview.setAnimation(translateanimation);

?

代码解释:

首先新建一个Animation ,他是由AnimationUtils中的一个静态方法loadAnimation来实例化,可以通过他们的

名字就知道他们的意思。

这个loadAnimation需要两个参数,一个是context;一个是这个动画对应的xml的id。



今天就到这里了。

1 楼 zhouy478319399 2011-10-07   很好 学习一下