现在的位置: 首页 > 综合 > 正文

Android动画(一)

2018年04月19日 ⁄ 综合 ⁄ 共 1830字 ⁄ 字号 评论关闭

转自:http://blog.csdn.net/zhy_cheng/article/details/7950957


Android Tweened Animation一共有四种

Alpha: 淡入淡出效果

Scale: 缩放效果

Rotate: 旋转效果

Translate:移动效果

使用Tweened Animations的步骤

1.创建一个AnimationSet对象

2.根据需要创建需要的Animation对象

3.根据软件动画的需要,为Animation对象设置相应的数据

4.将Animation对象添加到AnimationSet对象中

5.使控件对象开始执行AnimationSet

Alpha动画

[java] view
plain
copy

  1.         AnimationSet as=new AnimationSet(true);  
  2. AlphaAnimation al=new AlphaAnimation(1,0);  
  3. //1代表完全不透明,0代表完全透明  
  4. al.setDuration(3000);  
  5. as.addAnimation(al);  
  6. iv.startAnimation(as);  

Rotate动画

[java] view
plain
copy

  1.                 AnimationSet as=new AnimationSet(true);  
  2. RotateAnimation al=new RotateAnimation (0,720,Animation.RELATIVE_TO_PARENT,0.5f,Animation.RELATIVE_TO_PARENT,0.5f);  
  3. //前两个参数参数旋转的角度,后面几个参数决定旋转的中心  
  4. //Animation.ABSOLUTE:绝对坐标  
  5. //Animation.RELATIVE_TO_PARENT:相对父控件  
  6. //Animation.RELATIVE_TO_SELF:相对自己  
  7. al.setDuration(3000);  
  8. as.addAnimation(al);  
  9. iv.startAnimation(as);  

Scale动画

[java] view
plain
copy

  1. AnimationSet as=new AnimationSet(true);  
  2.             ScaleAnimation al=new ScaleAnimation(0,1,0,1,Animation.RELATIVE_TO_SELF,0.5f,Animation.RELATIVE_TO_SELF,0.5f);  
  3.             //前四个参数是X从多大到多大,Y从多大到多大,后面的参数是缩放的中心点  
  4.             al.setDuration(3000);  
  5.             as.addAnimation(al);  
  6.             iv.startAnimation(as);  


Translate动画

[java] view
plain
copy

  1. AnimationSet as=new AnimationSet(true);  
  2.             TranslateAnimation al=new TranslateAnimation(Animation.RELATIVE_TO_SELF,0,Animation.RELATIVE_TO_SELF,2,Animation.RELATIVE_TO_SELF,0,Animation.RELATIVE_TO_SELF,2);  
  3.             al.setDuration(3000);  
  4.             as.addAnimation(al);  
  5.             iv.startAnimation(as);  


Animation还有几个方法

setFillAfter(boolean fillAfter)

如果fillAfter的值为真的话,动画结束后,控件停留在执行后的状态

setFillBefore(boolean fillBefore)

如果fillBefore的值为真的话,动画结束后,控件停留在动画开始的状态

setStartOffset(long startOffset)

设置动画控件执行动画之前等待的时间

setRepeatCount(int repeatCount)

设置动画重复执行的次数

抱歉!评论已关闭.