TranslateAnimation类:位置变化动画类

9.2TranslateAnimation类:位置变化动画类

TranslateAnimation类是Android系统中的位置变化动画类,用于控制View对象的位置变化,该类继承于Animation类。TranslateAnimation类中的很多方法都与Animation类一致,该类中最常用的方法便是TranslateAnimation构造方法。

【基本语法】public TranslateAnimation (float fromXDelta, float toXDelta,float fromYDelta, float toYDelta)

参数说明

fromXDelta:位置变化的起始点X坐标。

toXDelta:位置变化的结束点X坐标。

fromYDelta:位置变化的起始点Y坐标。

toYDelta:位置变化的结束点Y坐标。

【实例演示】下面通过代码来演示如何设置一个简单的位置变化动画效果。

  1. publicclassfirstActivityextendsActivity{
  2. @Override
  3. publicvoidonCreate(BundlesavedInstanceState){//重载onCreate方法
  4. super.onCreate(savedInstanceState);
  5. setContentView(R.layout.main);
  6. finalImageViewimage=(ImageView)findViewById(R.id.imageView1);//ImageView对象
  7. Buttonbtn1=(Button)findViewById(R.id.button1);//按钮对象
  8. Buttonbtn2=(Button)findViewById(R.id.button2);
  9. finalAnimationtranslateAnimation=newTranslateAnimation(0,300,0,300);//位置变化动画效果
  10. btn1.setOnClickListener(newView.OnClickListener(){//设置监听器
  11. @Override
  12. publicvoidonClick(Viewv){
  13. //TODOAuto-generatedmethodstub
  14. translateAnimation.setDuration(3000);//设置动画持续时间
  15. translateAnimation.setRepeatCount(2);//设置重复次数
  16. translateAnimation.setRepeatMode(Animation.REVERSE);//反方向执行
  17. image.setAnimation(translateAnimation);//设置动画效果
  18. translateAnimation.startNow();//启动动画
  19. }
  20. });
  21. btn2.setOnClickListener(newView.OnClickListener(){//设置监听器
  22. @Override
  23. publicvoidonClick(Viewv){
  24. //TODOAuto-generatedmethodstub
  25. translateAnimation.cancel();//取消动画执行
  26. }
  27. });
  28. }
  29. }
在这段代码中,首先通过TranslateAnimation构造方法创建了一个位置变化的动画对象。然后,在第一个按钮监听器中设置了动画的持续时间、重复次数和重复模式等,然后启动该动画。在第二个按钮监听器中取消该动画。读者运行这段代码,将看到图片沿如图9.7所示的路径往返运动。
图9.7 位置变化动画
package comdsfasdafsa.sdf;
TranslateAnimation类:位置变化动画类
import android.app.Activity;
public class TestActivity extends Activity {public void onCreate(Bundle savedInstanceState) { //重载onCreate方法 super.onCreate(savedInstanceState); setContentView(R.layout.main); final ImageViewimage=(ImageView)findViewById(R.id.Image); //ImageView对象 Buttonbtn1=(Button)findViewById(R.id.button1); //按钮对象 Buttonbtn2=(Button)findViewById(R.id.button2); final AnimationtranslateAnimation=new TranslateAnimation(0,200,0,200); //移动动画效果 btn1.setOnClickListener(new View.OnClickListener() { //设置监听器 public void onClick(View v) { // TODOAuto-generated method stub translateAnimation.setDuration(3000); //设置动画持续时间 translateAnimation.setFillAfter (true); //保留在终止位置 translateAnimation.setFillEnabled(true); //使能填充效果 image.setAnimation(translateAnimation); //设置动画效果 translateAnimation.startNow(); //启动动画 } }); btn2.setOnClickListener(new View.OnClickListener() { //设置监听器 public void onClick(View v) { // TODOAuto-generated method stub translateAnimation.cancel(); //取消动画执行 } });} }

  

爱华网本文地址 » http://www.aihuau.com/a/25101017/360403.html

更多阅读

转载 用MATLAB做聚类分析 matlab做聚类分析

原文地址:用MATLAB做聚类分析作者:康赛安斯近期工作关系用到Matlab做聚类分析。所谓聚类分析,其目的在于将研究的数据样本划分为不同类别。Matlab的统计工具箱提供了相应的分析工具

国企:如何摆脱两类矛盾的纠结

     随着经济发展中不平衡、不协调、不可持续等问题的显现,国企不仅没有走出“亏也挨骂赢也挨骂”的境地,反而更为尴尬,以至于“成为未来中国进一步成长的最主要障碍之一”。一时间,针对国企的改革路径,卖与不卖国企的两种观点势成

封面报道:奢侈品的另类营销

封面报道:奢侈品的另类营销策划人语奢侈品的气质与细节文/本刊编辑部如果将那些在香港已经上市以及准备上市的奢侈品做一个表单,你就会发现它们的司马昭之心。普拉达(Prada)、Coach、巴宝莉(Burberry)、Jimmy Choo,无论哪一个名字,都足

声明:《TranslateAnimation类:位置变化动画类》为网友证明给你看分享!如侵犯到您的合法权益请联系我们删除