博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
属性动画
阅读量:4918 次
发布时间:2019-06-11

本文共 2065 字,大约阅读时间需要 6 分钟。

这是属性动画的干货,这是单一动画,

222222textview = (TextView) findViewById(R.id.textview);        textview.setOnClickListener(new View.OnClickListener() {            @Override            public void onClick(View view) {                Toast.makeText(getApplication(), "你点击我了", Toast.LENGTH_SHORT).show();            }        });//ObjectAnimator 是继承自ValueAnimator的,ValueAnimator比较少用// ObjectAnimator animator = ObjectAnimator.ofFloat(textview,"alpha",1f,0f,1f);//alpha 透明变换 // ObjectAnimator animator = ObjectAnimator.ofFloat(textview,"rotation",0f,360f,);//rotation 360°旋转 float curTranslationY = textview.getTranslationY(); ObjectAnimator animator = ObjectAnimator.ofFloat(textview, "translationY", curTranslationY, 500f); // translationX 水平移动,负值向左,正直向右 translationY 垂直移动,正值向下,负值向上 //ObjectAnimator animator = ObjectAnimator.ofFloat(textview,"scaleX",1f,6f,1f); //scaleY 垂直缩放 scaleX水平缩放  animator.setDuration(3000);//动作完成时间    //动画播放监听       /* animator.addUpdateListener(new ValueAnimator.AnimatorUpdateListener() {            @Override            public void onAnimationUpdate(ValueAnimator valueAnimator) {                float currentValue = (float) valueAnimator.getAnimatedValue();                Log.d("TAG", "cuurent value is " + currentValue);            }        });*/        // animator.setStartDelay(5000);//延迟执行        // animator.setRepeatCount(1);//循环次数        // animator.setRepeatMode(ValueAnimator.REVERSE);//ValueAnimator.REVERSE倒序播放  ValueAnimator.RESTART重新播放        animator.start();

 下面再贴上组合动画,组合动画就是生成几个动画之后,把他们按照想要的顺序组合起来播放,靠的是 AnimatorSet

    ObjectAnimator moveIn = ObjectAnimator.ofFloat(textview, "translationX", -500f, 0f);        ObjectAnimator rotate = ObjectAnimator.ofFloat(textview, "rotation", 0f, 360f);        ObjectAnimator fadeInOut = ObjectAnimator.ofFloat(textview, "alpha", 1f, 0f, 1f);        AnimatorSet animSet = new AnimatorSet();        animSet.play(rotate).with(fadeInOut).after(moveIn);//play是播放,with是同时进行,after是在某个动画执行完之后        animSet.setDuration(5000);        animSet.start();

 

转载于:https://www.cnblogs.com/laoyimou/p/7832661.html

你可能感兴趣的文章
实验五(数组与指针)
查看>>
编程的智慧(王垠)(http://www.cocoachina.com/programmer/20151125/14410.html)
查看>>
windows XP声音图标无法放入任务栏
查看>>
线性渐变的兼容性写法
查看>>
简单的同步MSMQ
查看>>
关于position的定位
查看>>
应用程序-特定 权限设置并未向在应用程序容器 不可用SID
查看>>
Matlab图像处理工具箱用户指南——裁剪图像及空间变换部分翻译
查看>>
Cookie and Session的介绍
查看>>
MySQL架构
查看>>
斯坦福机器学习-第三周(分类,逻辑回归,过度拟合及解决方法) ...
查看>>
Python 三级菜单
查看>>
《城盐州》:诗与史
查看>>
jquery 源码分析七 - Sizzle
查看>>
素数的另一编法
查看>>
写一个 sum方法,在使用下面任一语法调用时,都可以正常工作
查看>>
【VBA编程】10.自定义集合
查看>>
sharepoint 2010 培训公司课程内容
查看>>
GUN.TROVE 集合框架
查看>>
python 中的input()和raw_input()功能与使用区别
查看>>