动画效果 ObjectAnimator
学习了一下动画效果的使用,做一下笔记
ImageView imageView = findViewById(R.id.imageView);
ObjectAnimator.ofFloat(imageView,"translationY",0F,200F)
.setDuration(1000).start();//translationX也可以 ObjectAnimator.ofFloat(imageView,"rotation",0F,360F)
.setDuration(1000).start();//旋转360度
//这里是多个动画同时实现 Y方向上的平移与自身的旋转
PropertyValuesHolder p1 = PropertyValuesHolder.ofFloat("rotation",0,360F);
PropertyValuesHolder p2 = PropertyValuesHolder.ofFloat("translationX",0,200F);
PropertyValuesHolder p3 = PropertyValuesHolder.ofFloat("translationY",0,200F);
//设置三个动画
ObjectAnimator.ofPropertyValuesHolder(imageView,p1,p2,p3).setDuration(1000).start();
// 先传入控件 然后是个可变长的数组
ObjectAnimator animator1 = ObjectAnimator.ofFloat(imageView,"rotation",0,360F);
ObjectAnimator animator2 = ObjectAnimator.ofFloat(imageView,"translationX",0,300F);
ObjectAnimator animator3 = ObjectAnimator.ofFloat(imageView,"translationY",0,300F); AnimatorSet set=new AnimatorSet();
set.playTogether(animator1,animator2,animator3);//同时
set.setDuration(1000);
set.start();
ObjectAnimator animator1 = ObjectAnimator.ofFloat(imageView,"rotation",0,360F);
ObjectAnimator animator2 = ObjectAnimator.ofFloat(imageView,"translationX",0,300F);
ObjectAnimator animator3 = ObjectAnimator.ofFloat(imageView,"translationY",0,300F); AnimatorSet set = new AnimatorSet();
set.playSequentially(animator1,animator2,animator3);//按照顺序开始动画
set.setDuration(1000);
set.start();
通过with,after,before来定义多个动画之前的先后顺序
set.play(animator2).with(animator3);
set.play(animator1).after(animator2);
ObjectAnimator animator = ObjectAnimator.ofFloat(view,"alpha",0F,1F);//设置透明度
animator.setDuration(1000);// 1000ms
animator.addListener(new AnimatorListenerAdapter() {//设置监听器
//这里只重写了 end的监听,也可以重写 start等监听
@Override
public void onAnimationEnd(Animator animation) {
super.onAnimationEnd(animation);//end时 toast
Toast.makeText(MainActivity.this,"anim end",Toast.LENGTH_SHORT).show();
}
});
animator.start();
动画效果 ObjectAnimator的更多相关文章
- android 开发 View _2_ View的属性动画ObjectAnimator ,动画效果一览
支持:https://www.cnblogs.com/whoislcj/p/5738478.html translationX的效果: protected void onCreate(Bundle s ...
- Android动画效果之自定义ViewGroup添加布局动画
前言: 前面几篇文章介绍了补间动画.逐帧动画.属性动画,大部分都是针对View来实现的动画,那么该如何为了一个ViewGroup添加动画呢?今天结合自定义ViewGroup来学习一下布局动画.本文将通 ...
- Android动画效果之Property Animation进阶(属性动画)
前言: 前面初步认识了Android的Property Animation(属性动画)Android动画效果之初识Property Animation(属性动画)(三),并且利用属性动画简单了补间动画 ...
- Android动画效果之初识Property Animation(属性动画)
前言: 前面两篇介绍了Android的Tween Animation(补间动画) Android动画效果之Tween Animation(补间动画).Frame Animation(逐帧动画)Andr ...
- Android属性动画之ObjectAnimator控制
Android为我们提供了大量的动画效果,如何通过这些动画来达到我们需要的效果呢?今天就为大家总结一下ObjectAnimator动画控制事件. 该项目的的布局文件只有两个控件:ImageView和B ...
- Android属性动画之ObjectAnimator
相信对于Android初学者,对于Android中的动画效果一定很感兴趣,今天为大家总结一下刚刚学到的属性动画案例. 首先和一般的Android应用一样,我们先建一个工程,为了方便,我们的布局文件中就 ...
- 安卓动画之ObjectAnimator
ObjectAnimator 不仅仅移动位置,还移动了对象view 先来代码片段: //Y轴变换 ObjectAnimator oa = ObjectAnimator.ofFloat(imageVie ...
- android动画效果演示
第一种:TranslateAnimation 动画效果演示: public void move(View view) { // 传统动画效果 TranslateAnimation animation ...
- 一个带动画效果的颜色选择对话框控件AnimatedColorPickerDialog
android4.4的日历中选择日程显示颜色的时候有一个颜色选择对话框非常漂亮,模仿他的界面我实现了一个类似的对话框,而且带有动画效果. 代码的实现可讲的地方不多,主要是采用了和AlertDialog ...
随机推荐
- 外键参数 onupdate,ondelete等(cascade,no adcion,set null,restrict)
MySQL外键约束On Delete.On Update各取值的含义 先看On Delete属性,可能取值如上图为:No Action, Cascade,Set Null, Restrict属性. 当 ...
- mysql 8.0.12 日常出错
最近不知道怎么回事,数据库老是会输出一个: [Err] 1055 - Expression #1 of ORDER BY clause is not in GROUP BY clause and co ...
- SQL Server公用表达式CET递归查询所有上级数据
with cte as( select bianma,fjbm from #tree where chkDisabled='true' union all select t.bianma,t.fjbm ...
- 集合之HashMap、Hashtable
HashMap 基于哈希表的 Map 接口的实现.此实现提供所有可选的映射操作,并允许使用 null 值和 null 键.(除了非同步和允许使用 null 之外,HashMap 类与 Hashtabl ...
- 『Python基础-8』列表
『Python基础-8』列表 1. 列表的基本概念 列表让你能够在一个地方存储成组的信息,其中可以只包含几个 元素,也可以包含数百万个元素. 列表由一系列按特定顺序排列的元素组成.你可以创建包含字母表 ...
- python 两个面试题
1.下面程序的运算结果是什么?? class Parent: def func(self): print("In Parent func") def __init__(self): ...
- Hangfire初探
Hangfire 是什么? Hangfire 是一个定时任务的管理后台,它拥有定时任务功能和及其相关的管理后台界面.Hangfire 原生使用 .NET 开发的,同时支持 .NET 和 .NET Co ...
- Fibonacci递归以及数组实现
说起Fibonacci数列,首先想到的就是递归算法了,这也是帮助理解递归算法比较经典的题目实现如下: public static int Fibonacci(int n){ if (n == 0 ...
- TCP/IP协议族、版本以及编址机制
TCP/IP协议族简称TCP/IP.这么命名是因为该协议家族中的两个核心协议:TCP(传输控制协议)和IP(网际协议),为该家族中最早通过的标准.TCP/IP提供点对点的链接机制,将数据应该如何封装, ...
- rsync同步常用命令
转载源地址http://blog.csdn.net/niushuai666/article/details/16880061 如果你是一位运维工程师,你很可能会面对几十台.几百台甚至上千台服务器,除了 ...