Android属性动画之ValueAnimation

  ValueAnimation是ObjectAnimation类的父类,经过前几天的介绍,相信大家对ObjectAnimation有了 一定的认识,今天就为大家最后介绍一下ValueAnimation,ValueAnimation谷歌提供了更好的过程控制,现在就以一个类计时的小动画为大家简单介绍一下:

  应用的布局文件非常简单,只有一个Button按钮,就不再赘述了。下面重点介绍一下具体的实现:

public void init() {
button = (Button) findViewById(R.id.fourbutton);
button.setOnClickListener(new myButtonListener());
} public class myButtonListener implements View.OnClickListener{
@Override
public void onClick(View view) {
final ValueAnimator animator = ValueAnimator.ofInt(1, 100);
animator.setDuration(5000);
animator.setInterpolator(new LinearInterpolator());//线性效果变化
animator.addUpdateListener(new ValueAnimator.AnimatorUpdateListener() {
@Override
public void onAnimationUpdate(ValueAnimator valueAnimator) {
Integer integer = (Integer) animator.getAnimatedValue();
button.setText("" + integer);
}
});
animator.start();
}
}

  以上就是小应用的全部代码了,重点在于addUpdateListener()方法的实现,通过重写ValueAnimator.AnimatorUpdateListener()的onAnimationUpdate(ValueAnimator valueAnimator)方法来对动画的整个实现过程进行控制。

  到这里关于Android的属性动画实现就介绍完毕了,现在进行一下总结。

1、常用属性:

  translationX/translationY:水平|竖直偏移量

  rotation/rotationX/rotationY:3D翻转

  scaleX/scaleY:X轴|Y轴的缩放

  X/Y:具体移动到的点

  alpha:透明度

  属性动画的这五个属性,类似于以前的value动画的四个属性,不过属性动画框架的执行效率更高,效果更好。

2、常用方法和类:

  ValueAnimation、ObjectAnimation类:对于这两个类,相信大家一定不陌生了,更多的功能请查询谷歌API

  AnimationUpdateListener、AnimationListenerAdapter:用于做属性动画的监听事件

  PopertyValuesHolder:控制动画集合的显示效果、顺序与流程控制

  AnimationSet、TypeEvaluators:值计算器和差值计算器

  Interpolator:动画显示的变化规律

3、Interpolator的属性:

  AccelerateInterpolator:不断加速

  DecelerateInterpolator:不断减速

  AnticipateInterpolator:前凸

  OvershootInterpolator:尾翘

  LinearInterpolator:线性变化

  BounceInterpolator:*落体

  以上就是Interpolator差值器的6个属性,大家可以在项目中都实验一下,这样可以更好的理解和使用。

  到今天Android属性动画的总结就为大家奉献完毕,欢迎交流学习(1453296946@qq.com)。

上一篇:Node.js 入门 资源


下一篇:浅析Java中synchronized与static synchronized