文档章节

Android中属性动画的基本用法

 红豆与绿豆
发布于 2015/12/14 10:47
字数 536
阅读 26
收藏 3

在开发中属性动画是很常用的功能,下面我把属性动画的基本用法记录一下,供他人学习,也逐渐积累自己的知识。

单个动画效果:

//创建动画对象,后面的参数依次为:动画效果的目标组件,需要改变的该组建的属性(必须有对应的get和set方法就可以),后面三个参数写变化过程对应数值。
ObjectAnimator animator= ObjectAnimator.ofFloat(textView, "TextSize", 15, 50, 15);
//动画过程所用时间,会按这个世界自动平滑执行
animator.setDuration(6000);
//动画开始
animator.start();

 

组合动画效果:

//after(Animator anim)   将现有动画插入到传入的动画之后执行
//after(long delay)   将现有动画延迟指定毫秒后执行
//before(Animator anim)   将现有动画插入到传入的动画之前执行
//with(Animator anim)   将现有动画和传入的动画同时执行
//创建动画对象,后面的参数依次为:动画效果的目标组件,需要改变的该组建的属性(必须有对应的get和set方法就可以),后面三个参数写变化过程对应数值。
        ObjectAnimator animator1= ObjectAnimator.ofFloat(textView, "TextSize", 15, 50, 15);
//这里每次先获取目标View的角度       
        float init = textView.getRotation();
//旋转,道理同上
        ObjectAnimator animator2 = ObjectAnimator.ofFloat(textView,"rotation", init,init+180f);
//平移,道理同上 
        ObjectAnimator animator3 = ObjectAnimator.ofFloat(textView,"TranslationX",curTranslationX,-500f,curTranslationX);
//设置动画组合的类
        AnimatorSet animatorSet=new AnimatorSet();
//设置3个动画如何组合搭配
        animatorSet.play(animator2).with(animator1).after(animator3);
//动画过程所用时间,会按这个世界自动平滑执行
        animatorSet.setDuration(6000);
//动画开始
        animatorSet.start();

 

为动画增加监听:

//这里是为动画添加的监听,具体实现哪个方法根据需求选择即可,例如:动画执行完毕、动画执行开始、动画执行取消、动画执行重复动作等。
animatorSet.addListener(new AnimatorListenerAdapter() {
    //这里根据需要实现具体的想要执行的内容
    @Override
    public void onAnimationEnd(Animator animation) {
        super.onAnimationEnd(animation);
    }
});

 

以上。另外对APP进行在线全方位的安全性、兼容性测试,我都会用这个:www.ineice.com


© 著作权归作者所有

粉丝 3
博文 49
码字总数 21798
作品 0
南昌
私信 提问
React Navigation

https://reactnavigation.org/docs/intro/nesting 官网 http://blog.csdn.net/u013718120/article/details/72357698 http://www.jianshu.com/p/2f575cc35780 这里只是基本用法,高级详情用法......

Chason-洪
2017/11/15
0
0
React Navigation 导航栏样式调整+底部角标消息提示

五一佳节匆匆而过,有人选择在外面看人山人海,有人选择宅在家中度过五一,也有人依然坚守在第一线,致敬! 这是坚持学习的第二篇文章,可能会迟到,但是绝不会缺席,这篇要涉及到的是,也是...

程序猿tx
05/06
0
0
关于Android 动画技术学习讨论。

关于android动画主要有三种:补间动画,帧动画和属性动画(android3.0以后引入)详细了解动画的基本知识,可详细阅读该博文http://www.cnblogs.com/angeldevil/archive/2011/12/02/2271096....

wapcdwiki
2014/07/25
0
0
Android开发之漫漫长途 XVII——动画(续)

该文章是一个系列文章,是本人在Android开发的漫漫长途上的一点感想和记录,我会尽量按照先易后难的顺序进行编写该系列。该系列引用了《Android开发艺术探索》以及《深入理解Android 卷Ⅰ,Ⅱ...

马飞标
2018/08/13
0
0
Android窗口抖动之动画实现

 Android窗口抖动之动画实现 Android的窗口抖动,可以通过写xml动画配置文件实现,比如常见的微信摇一摇,其实就是通过Android动画的一些基本属性如translate,cycleInterpolator实现的。...

开开心心过
2016/01/08
0
0

没有更多内容

加载失败,请刷新页面

加载更多

Ajax

定义 Ajax是一种在无需重新加载整个网页的情况下,能够更新部分网页的技术,用于创建动态网页 Ajax=Asynchronous Javascript And XML(异步的JavaScript和XML) 原理 XMLHttpRequest对象(异...

星闪海洋
昨天
2
0
Jenkins 中文本地化的重大进展

本文首发于:Jenkins 中文社区 我从2017年开始,参与 Jenkins 社区贡献。作为一名新成员,翻译可能是帮助社区项目最简单的方法。 本地化的优化通常是较小的改动,你无需了解项目完整的上下文...

Jenkins中文社区
昨天
3
0
Spring中如何使用设计模式

关于设计模式,如果使用得当,将会使我们的代码更加简洁,并且更具扩展性。本文主要讲解Spring中如何使用策略模式,工厂方法模式以及Builder模式。 1. 策略模式 关于策略模式的使用方式,在S...

爱宝贝丶
昨天
3
0
前后端分离-前端搭建(vue)

前端使用vue,那么怎么搭建vue呢 先安装nodejs以及npm 现在基本的nodejs都包含有npm,下载安装后, 可以在cmd命令里输入 node -v 和npm -v 分别查看安装的版本 两个都显示了版本就是安装ok ...

咸鱼-李y
昨天
3
0
聊聊elasticsearch的DeadlockAnalyzer

序 本文主要研究一下elasticsearch的DeadlockAnalyzer DeadlockAnalyzer elasticsearch-7.0.1/server/src/main/java/org/elasticsearch/monitor/jvm/DeadlockAnalyzer.java public class Dea......

go4it
昨天
2
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部