码迷,mamicode.com
首页 > 移动开发 > 详细

Android 动画之TranslateAnimation应用详解

时间:2016-02-14 14:15:59      阅读:270      评论:0      收藏:0      [点我收藏+]

标签:

TranslateAnimation比较常用,比如QQ,网易新闻菜单条的动画,就可以用TranslateAnimation实现,
通过TranslateAnimation(float fromXDelta, float toXDelta, float fromYDelta, float toYDelta) 来定义动画 

参数说明:
float fromXDelta 动画开始的点离当前View X坐标上的差值
float toXDelta 动画结束的点离当前View X坐标上的差值
float fromYDelta 动画开始的点离当前View Y坐标上的差值
float toYDelta 动画开始的点离当前View Y坐标上的差值

 

常用方法:

 
animation.setDuration(long durationMillis);//设置动画持续时间 
animation.setRepeatCount(int i);//设置重复次数 
animation.setRepeatMode(Animation.REVERSE);//设置反方向执行 

 

代码:

 

 
public class MainActivity extends Activity { 
ImageView image; 
Button start; 
Button cancel; 
@Override 
public void onCreate(Bundle savedInstanceState) { 
super.onCreate(savedInstanceState); 
setContentView(R.layout.activity_main); 
image = (ImageView) findViewById(R.id.main_img); 
start = (Button) findViewById(R.id.main_start); 
cancel = (Button) findViewById(R.id.main_cancel); 
/** 设置位移动画 向右位移150 */ 
final TranslateAnimation animation = new TranslateAnimation(0, 150,0, 0); 
animation.setDuration(2000);//设置动画持续时间 
animation.setRepeatCount(2);//设置重复次数 
animation.setRepeatMode(Animation.REVERSE);//设置反方向执行 
start.setOnClickListener(new OnClickListener() { 
public void onClick(View arg0) { 
image.setAnimation(animation); 
/** 开始动画 */ 
animation.startNow(); 
} 
}); 
cancel.setOnClickListener(new OnClickListener() { 
public void onClick(View v) { 
/** 结束动画 */ 
animation.cancel(); 
} 
}); 
} 
} 

 

Android 动画之TranslateAnimation应用详解

标签:

原文地址:http://www.cnblogs.com/AceIsSunshineRain/p/5188988.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!