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)。

Android属性动画之ValueAnimation的更多相关文章

  1. Android属性动画

    这几天看郭神的博客 Android属性动画完全解析(上),初识属性动画的基本用法之后,我自己突然想实现一种动画功能,就是我们在携程网.阿里旅行等等手机APP端买火车票的时候,看到有选择城市,那么就有出 ...

  2. 【转】android 属性动画之 ObjectAnimator

    原文网址:http://blog.csdn.net/feiduclear_up/article/details/39255083 前面一篇博客讲解了 android 简单动画之 animtion,这里 ...

  3. Android属性动画完全解析(下)

    转载:http://blog.csdn.net/guolin_blog/article/details/44171115 大家好,欢迎继续回到Android属性动画完全解析.在上一篇文章当中我们学习了 ...

  4. Android属性动画完全解析(上),初识属性动画的基本用法

    转载请注明出处:http://blog.csdn.net/guolin_blog/article/details/43536355 在手机上去实现一些动画效果算是件比较炫酷的事情,因此Android系 ...

  5. Android属性动画完全解析(中)

    转载:http://blog.csdn.net/guolin_blog/article/details/43536355 大家好,在上一篇文章当中,我们学习了Android属性动画的基本用法,当然也是 ...

  6. Android属性动画完全解析(上)

    Android属性动画完全解析(上) 转载:http://blog.csdn.net/guolin_blog/article/details/43536355 在手机上去实现一些动画效果算是件比较炫酷 ...

  7. Android 属性动画(Property Animation) 全然解析 (下)

    转载请标明出处:http://blog.csdn.net/lmj623565791/article/details/38092093 上一篇Android 属性动画(Property Animatio ...

  8. Android 属性动画 源码解析 深入了解其内部实现

    转载请标明出处:http://blog.csdn.net/lmj623565791/article/details/42056859,本文出自:[张鸿洋的博客] 我参加了博客之星评选,如果你喜欢我的博 ...

  9. 用Android属性动画实现和演示迪士尼动画基本原则

    本文将介绍在Android平台上实现和演示迪士尼动画基本准则. 项目开源,GitHub: https://github.com/vhow/animation 说明: 演示动画原则的想法源自 Anima ...

随机推荐

  1. IOS Alcatraz Xcode6.4安装指南

    1.Alcatraz Alcatraz是Xcode上的插件管理器,用过notepad++应该印象深刻,近来在一部新机器 按以前的安装方法安装老是安装不成功.特意查找了下资料,最后安装成功. 2.安装过 ...

  2. Usart的单线半双工模式(stm32F10x系列)

    这两天折腾CTS/RTS硬件流控,看到说232协议的CTS/RTS只是用来做半双工换向使用的.正好手头上有块stm32的板子,看了看stm32的Usart,竟然发现支持的是单线半双工.232里面毕竟4 ...

  3. 获取google翻译的音频文件_合并音频文件的方法

    1. 把引文输入google 翻译,然后点击"朗读"

  4. Android中的IntentService

    首先说下,其他概念:Android中的本地服务与远程服务是什么? 本地服务:LocalService 应用程序内部------startService远程服务:RemoteService androi ...

  5. java-API中的常用类,新特性之-泛型,高级For循环,可变参数

    API中的常用类 System类System类包含一些有用的类字段和方法.它不能被实例化.属性和方法都是静态的. out,标准输出,默认打印在控制台上.通过和PrintStream打印流中的方法组合构 ...

  6. map 遍历

    //最常规的一种遍历方法,最常规就是最常用的,虽然不复杂,但很重要,这是我们最熟悉的,就不多说了!! public static void work(Map<String, Student> ...

  7. wordpress搬家换域名

    很多朋友开始接触wordpress都是在本地安装调试好了,再上传到服务器正常运营,我也是一样当我在本地测试好了准备将网站上线,在搬家到服务器的时候遇到过的一些问题,记录分享一下我是如何为wordpre ...

  8. go runtime.Gosched() 和 time.Sleep() 做协程切换

    网上看到个问题: package main import ( "fmt" "time" ) func say(s string) { ; i < ; i+ ...

  9. Powershell--批量拆分SQL语句为事务并批处理

    作为DBA,时不时会遇到将数据导入到数据库的情况,假设业务或研发提供一个包含上百万行INSERT语句的脚本文件,而且这些INSERT 语句没有使用GO来进行批处理拆分,那么直接使用SQLCMD来执行会 ...

  10. 为什么eclipse中启动tomcat后,浏览器中出现404?

    问题描述: tomcat压缩包加压后,启动lib文件夹下面的startup.bat,在浏览器中输入http://localhost:8080/后出现熟悉的界面. 但是在eclipse中,jsp可以正常 ...