TranslateAnimation类:位置变化动画类

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坐标。

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

public class firstActivity extends Activity {  @Override
public void onCreate(Bundle savedInstanceState) {               //重载onCreate方法  super.onCreate(savedInstanceState);  setContentView(R.layout.main);  final ImageView image=(ImageView)findViewById(R.id.imageView1); //ImageView对象  Button btn1=(Button)findViewById(R.id.button1);             //按钮对象  Button btn2=(Button)findViewById(R.id.button2);  final Animation translateAnimation=new TranslateAnimation(0,300,0,300);                                                                 //位置变化动画效果  btn1.setOnClickListener(new View.OnClickListener() {            //设置监听器  @Override  public void onClick(View v) {  // TODO Auto-generated method stub  translateAnimation.setDuration(3000);               //设置动画持续时间  translateAnimation.setRepeatCount(2);               //设置重复次数  translateAnimation.setRepeatMode(Animation.REVERSE);    //反方向执行  image.setAnimation(translateAnimation);             //设置动画效果  translateAnimation.startNow();                      //启动动画  }  });  btn2.setOnClickListener(new View.OnClickListener() {            //设置监听器  @Override  public void onClick(View v) {  // TODO Auto-generated method stub  translateAnimation.cancel();                        //取消动画执行  }  });
}
}  

在这段代码中,首先通过TranslateAnimation构造方法创建了一个位置变化的动画对象。然后,在第一个按钮监听器中设置了动画的持续时间、重复次数和重复模式等,然后启动该动画。在第二个按钮监听器中取消该动画。读者运行这段代码,将看到图片沿如图9.7所示的路径往返运动。

package comdsfasdafsa.sdf;import android.app.Activity;public class TestActivity extends Activity {  public void onCreate(Bundle savedInstanceState) {               //重载onCreate方法  super.onCreate(savedInstanceState);  setContentView(R.layout.main);  final ImageView image=(ImageView)findViewById(R.id.Image); //ImageView对象  Button btn1=(Button)findViewById(R.id.button1);             //按钮对象  Button btn2=(Button)findViewById(R.id.button2);  final Animation translateAnimation=new TranslateAnimation(0,200,0,200);                                                                 //移动动画效果  btn1.setOnClickListener(new View.OnClickListener() {            //设置监听器  public void onClick(View v) {  // TODO Auto-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) {  // TODO Auto-generated method stub  translateAnimation.cancel();                        //取消动画执行  }  });
}
} 

Android快速开发 动画系列(一) 之 TranslateAnimation(平移动画)相关推荐

  1. android app启动图片 加动画效果,Android Studio开发APP启动程序时开屏简单动画效果快速有效解决方案...

    Android Studio开发APP启动程序时开屏简单动画效果快速有效解决方案 大家在设计APP的末期,都会想给APP搞一些"花里胡哨"的特效来提高APP的B格.博主表示亲测有效 ...

  2. Android 快速开发系列 打造万能的ListView GridView 适配器

    转载请标明出处:http://blog.csdn.net/lmj623565791/article/details/38902805 ,本文出自[张鸿洋的博客] 1.概述 相信做Android开发的写 ...

  3. 提供了一些工具类以及自定义 View,用于日常的 Android 快速开发

    Androids 项目地址:1993hzw/Androids  简介:提供了一些工具类以及自定义 View,用于日常的 Android 快速开发.something about android 更多: ...

  4. Android快速开发不可或缺的11个工具类(下载)

    Android快速开发不可或缺的11个工具类(下载) 源码简介 Android快速开发不可或缺的11个辅助类,其中10个来自张鸿洋的博客,1个是我平时积攒的,复制粘贴到你的项目里,添加上包名就可以直接 ...

  5. Android应用开发提高系列(5)——Android动态加载(下)——加载已安装APK中的类和资源...

    前言  Android动态加载(下)--加载已安装APK中的类和资源. 声明 欢迎转载,但请保留文章原始出处:)  博客园:http://www.cnblogs.com 农民伯伯: http://ov ...

  6. android 快速开发工具类,android面试知识点

    项目地址:570622566/FastAndrUtils  简介:android 快速开发工具类 更多:作者   提 Bug   官网 标签: Fastandrutils 是一套整理修改整合的 and ...

  7. 【转】 Android快速开发系列 10个常用工具类 -- 不错

    原文网址:http://blog.csdn.net/lmj623565791/article/details/38965311 转载请标明出处:http://blog.csdn.net/lmj6235 ...

  8. Android快速开发系列 10个常用工具类

    目录(?)[+] 转载请标明出处:http://blog.csdn.net/lmj623565791/article/details/38965311,本文出自[张鸿洋的博客] 打开大家手上的项目,基 ...

  9. Android快速开发整理(库、插件,kotlin枚举注解

    RxAndroid implementation 'io.reactivex.rxjava2:rxandroid:2.1.1' Github:https://github.com/ReactiveX/ ...

最新文章

  1. 深度讲解:web前端性能优化
  2. 2018-2019-2 网络对抗技术 20165230 Exp9 :Web安全基础
  3. 模块mod_h323的编译
  4. PerfLab(直接在服务器上完成)
  5. html5做的太阳系
  6. 自顶向下和自底向上测试的优缺点
  7. NSString,最美的创建方式也最毒
  8. 22.创建DockWidget
  9. json字符串使用注意问题
  10. cuda 10.1和 cudnn 7.6.5
  11. MySQL事务(脏读、不可重复读、幻读)
  12. 51单片机外围模块——DS1302时钟模块
  13. python绘制缓和曲线_CAD里面如何绘制缓和曲线
  14. 二等分计算机打印机尺寸,[有赞零售] 【教程贴】打印机如何设置一等分、二等分、三等分打印尺寸...
  15. java实现微信网页授权登录
  16. SATA、mSATA 、PCIe和M.2——SSD硬盘的接口详解
  17. uniapp 微信小程序 保存图片到本地
  18. 相机对焦和调焦距的区别是什么 ?
  19. No matching provisioning profiles found 真机测试问题
  20. vue路由守卫beforeEach和afterEach

热门文章

  1. AnyViewer——局域网外远程控制电脑
  2. 【新手必看】用EVEREST Ultimate Edition来生成硬件报告
  3. tedu斌-MySql笔记2112-2
  4. 爱心日式便当 给爸爸妈妈的爱心便当 - 网易河南
  5. 苹果笔要不要买原装的?ipad pencil平替有压感的笔
  6. android 取mac地址,Android手机获取Mac地址的几种方法,androidmac
  7. 生物钟的研究、功能和机理——2017年度诺贝尔生理学或医学奖成果简析
  8. c++ 子类对象调用父类的方法
  9. 精辟:一个小公司老板的日常管理
  10. 资深国外3D建模师的经验分享以及对新入行的建模师的建议