android 属性动画之 ObjectAnimator

前面一篇博客讲解了 android 简单动画之 animtion,这里来讲解一下android 3.0之后添加的一些动画
  animator 中的 ObjectAnimator 。

1.alpha

//第一个参数为 view对象,第二个参数为 动画改变的类型,第三,第四个参数依次是开始透明度和结束透明度。
		ObjectAnimator alpha = ObjectAnimator.ofFloat(text, "alpha", 0f, 1f);
		alpha.setDuration(2000);//设置动画时间
		alpha.setInterpolator(new DecelerateInterpolator());//设置动画插入器,减速
		alpha.setRepeatCount(-1);//设置动画重复次数,这里-1代表无限
		alpha.setRepeatMode(Animation.REVERSE);//设置动画循环模式。
		alpha.start();//启动动画。

2.scale

AnimatorSet animatorSet = new AnimatorSet();//组合动画
		ObjectAnimator scaleX = ObjectAnimator.ofFloat(text, "scaleX", 1f, 0f);
		ObjectAnimator scaleY = ObjectAnimator.ofFloat(text, "scaleY", 1f, 0f);

		animatorSet.setDuration(2000);
		animatorSet.setInterpolator(new DecelerateInterpolator());
		animatorSet.play(scaleX).with(scaleY);//两个动画同时开始
		animatorSet.start();

3.translate

ObjectAnimator translationUp = ObjectAnimator.ofFloat(button, "Y",
				button.getY(), 0);
		translationUp.setInterpolator(new DecelerateInterpolator());
		translationUp.setDuration(1500);
		translationUp.start();

4. rotate

   AnimatorSet set = new AnimatorSet() ;
        ObjectAnimator anim = ObjectAnimator .ofFloat(phone, "rotationX", 0f, 180f);
        anim.setDuration(2000);
        ObjectAnimator anim2 = ObjectAnimator .ofFloat(phone, "rotationX", 180f, 0f);
        anim2.setDuration(2000);
        ObjectAnimator anim3 = ObjectAnimator .ofFloat(phone, "rotationY", 0f, 180f);
        anim3.setDuration(2000);
        ObjectAnimator anim4 = ObjectAnimator .ofFloat(phone, "rotationY", 180f, 0f);
        anim4.setDuration(2000); 

        set.play(anim).before(anim2); //先执行anim动画之后在执行anim2
        set.play(anim3).before(anim4) ;
        set.start(); 

5.android 改变背景颜色的动画实现如下

ObjectAnimator translationUp = ObjectAnimator.ofInt(button,
				"backgroundColor", Color.RED, Color.BLUE, Color.GRAY,
				Color.GREEN);
		translationUp.setInterpolator(new DecelerateInterpolator());
		translationUp.setDuration(1500);
		translationUp.setRepeatCount(-1);
		translationUp.setRepeatMode(Animation.REVERSE);
		/*
		 * ArgbEvaluator:这种评估者可以用来执行类型之间的插值整数值代表ARGB颜色。
		 * FloatEvaluator:这种评估者可以用来执行浮点值之间的插值。
		 * IntEvaluator:这种评估者可以用来执行类型int值之间的插值。
		 * RectEvaluator:这种评估者可以用来执行类型之间的插值矩形值。
		 *
		 * 由于本例是改变View的backgroundColor属性的背景颜色所以此处使用ArgbEvaluator
		 */

		translationUp.setEvaluator(new ArgbEvaluator());
		translationUp.start();
				
时间: 2024-10-15 05:58:02

android 属性动画之 ObjectAnimator的相关文章

【转】android 属性动画之 ObjectAnimator

原文网址:http://blog.csdn.net/feiduclear_up/article/details/39255083 前面一篇博客讲解了 android 简单动画之 animtion,这里来讲解一下android 3.0之后添加的一些动画   animator 中的 ObjectAnimator . 属性动画概念: 所谓属性动画:改变一切能改变的对象的属性值,不同于补间动画:只能改变 alpha,scale,rotate,translate.听着有点抽象,举例子说明 补间动画能实现的

Android属性动画之ObjectAnimator

相信对于Android初学者,对于Android中的动画效果一定很感兴趣,今天为大家总结一下刚刚学到的属性动画案例. 首先和一般的Android应用一样,我们先建一个工程,为了方便,我们的布局文件中就只添加一个ImageView和button按钮,代码如下: <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.andr

Android 属性动画框架 ObjectAnimator、ValueAnimator ,这一篇就够了

前言 我们都知道 Android 自带了 Roate Scale Translate Alpha 多种框架动画,我们可以通过她们实现丰富的动画效果,但是这些宽家动画却有一个致命的弱点,它们只是改变了 View 显示的大小,而没有改变 View 的响应区域.这时以 ObjectAnimator.ValueAnimator 为代表的属性动画也就应运而生了. 简单效果 工作原理 属性动画字如其名,是通过改变 View 的属性值来改变控件的形态,说白了就是通过反射技术来获取控件的一些属性如宽度.高度等的

Android属性动画之ObjectAnimator控制

Android为我们提供了大量的动画效果,如何通过这些动画来达到我们需要的效果呢?今天就为大家总结一下ObjectAnimator动画控制事件. 该项目的的布局文件只有两个控件:ImageView和Button,在这里就不在赘述了,下面我们来看一下activity的实现: public class TwoActivity extends Activity{ private Button button;private ImageView imageView; @Override protected

Android属性动画完全解析(中),ValueAnimator和ObjectAnimator的高级用法

转载请注明出处:http://blog.csdn.net/guolin_blog/article/details/43536355 大家好,在上一篇文章当中,我们学习了Android属性动画的基本用法,当然也是最常用的一些用法,这些用法足以覆盖我们平时大多情况下的动画需求了.但是,正如上篇文章当中所说到的,属性动画对补间动画进行了很大幅度的改进,之前补间动画可以做到的属性动画也能做到,补间动画做不到的现在属性动画也可以做到了.因此,今天我们就来学习一下属性动画的高级用法,看看如何实现一些补间动画

Android属性动画Property Animation系列一之ObjectAnimator

转载请注明出处 http://blog.csdn.net/feiduclear_up/article/details/45915377 前面一篇博客解读了Android属性动画Property Animation系列一之ValueAnimator的相关知识点以及怎么使用.这篇博客继续解读Android 属性动画 ObjectAnimator 类的使用. ObjectAnimator 相比ValueAnimator类,ObjectAnimator更加实用,因为它真正可以作用在一个对象上.不过Obj

Android属性动画初步学习笔记

近期学习Android属性动画和VetcorDrawable实现属性动画,以此记录一下学习笔记. 首先是属性动画,小白没截过动态图,方三张静态图吧       效果是点击红色图片,7个选项以属性动画的方式弹出并旋转,最后成一个1/4圆弧排列,再次点击则收回到红色原点下. 布局文件很简单,就是一个RelativeLayout下八个ImageView: 1 <?xml version="1.0" encoding="utf-8"?> 2 <Linear

Android 属性动画(Property Animation) 完全解析 (上)

转载请标明出处:http://blog.csdn.net/lmj623565791/article/details/38067475 1.概述 Android提供了几种动画类型:View Animation .Drawable Animation .Property Animation .View Animation相当简单,不过只能支持简单的缩放.平移.旋转.透明度基本的动画,且有一定的局限性.比如:你希望View有一个颜色的切换动画:你希望可以使用3D旋转动画:你希望当动画停止时,View的

Android属性动画完全解析

Android属性动画完全解析(上),初识属性动画的基本用法 Android属性动画完全解析(中),ValueAnimator和ObjectAnimator的高级用法 Android属性动画完全解析(下),Interpolator和ViewPropertyAnimator的用法