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 很好 学习一下
