首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

如何使用playTogether按顺序播放ObjectAnimator

playTogether按顺序播放ObjectAnimator是Android中的一个动画效果组合方法,可以实现多个动画按照指定的顺序依次播放。

使用playTogether按顺序播放ObjectAnimator的步骤如下:

  1. 创建ObjectAnimator对象:使用ObjectAnimator.ofXXX()方法创建需要播放的动画对象,其中XXX表示需要操作的属性,例如translationX、rotation、alpha等。
  2. 设置动画的属性值:使用ObjectAnimator的方法,如setDuration()设置动画的持续时间,setInterpolator()设置动画的插值器,setRepeatCount()设置动画的重复次数等。
  3. 创建AnimatorSet对象:使用AnimatorSet类创建一个动画集合对象,用于组合多个动画。
  4. 添加动画到AnimatorSet中:使用AnimatorSet的playTogether()方法将多个ObjectAnimator对象添加到AnimatorSet中,按照添加的顺序依次播放。
  5. 启动动画:调用AnimatorSet的start()方法启动动画,动画将按照添加的顺序依次播放。

示例代码如下:

代码语言:txt
复制
// 创建ObjectAnimator对象
ObjectAnimator animator1 = ObjectAnimator.ofFloat(view, "translationX", 0f, 200f);
ObjectAnimator animator2 = ObjectAnimator.ofFloat(view, "rotation", 0f, 360f);
ObjectAnimator animator3 = ObjectAnimator.ofFloat(view, "alpha", 1f, 0f);

// 设置动画的属性值
animator1.setDuration(1000);
animator2.setDuration(2000);
animator3.setDuration(500);

// 创建AnimatorSet对象
AnimatorSet animatorSet = new AnimatorSet();

// 添加动画到AnimatorSet中,按照添加的顺序依次播放
animatorSet.playTogether(animator1, animator2, animator3);

// 启动动画
animatorSet.start();

使用playTogether按顺序播放ObjectAnimator可以实现多个动画的有序播放,适用于需要按照特定顺序展示动画效果的场景,例如引导页的动画展示、页面切换的过渡动画等。

腾讯云相关产品和产品介绍链接地址:

  • 腾讯云官网:https://cloud.tencent.com/
  • 云计算产品:https://cloud.tencent.com/product
  • 云原生产品:https://cloud.tencent.com/product/cns
  • 人工智能产品:https://cloud.tencent.com/product/ai
  • 物联网产品:https://cloud.tencent.com/product/iotexplorer
  • 移动开发产品:https://cloud.tencent.com/product/mobapp
  • 存储产品:https://cloud.tencent.com/product/cos
  • 区块链产品:https://cloud.tencent.com/product/baas
  • 元宇宙产品:https://cloud.tencent.com/product/vr
页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

自定义View(六)-动画- AnimatorSet与XML设置属性动画

更侧重的是在多个动画播放时对动画的控制(可以控制动画的顺序,延时,同时可以控制多个控件的动画等等)。...GIF11.gif 这就是playSequentially的效果,即逐个播放动画,一个动画结束后,播放下一个动画,播放顺序就是传入动画的先后顺序。...将播放改成playSequentially顺序播放动画: · private void doPlaySequentiallyAnimator2() { ObjectAnimator tv1BgAnimator... ---- AnimatorSet.Builder-自由设置动画顺序 上面两种播放方法只能一起播放或者顺序播放,无法指定某一个动画的播放顺序,如果想ABC三个动画想指定C先播放就要用到AnimatorSet.Builder...AnimatorSet.Builder可以更加灵活设置动画播放的先后顺序

1.4K20

Android动画工具类的封装实战记录

封装属性动画工具类不可避免的还要考虑到属性动画的组合播放动画的需求,而属性动画的组合播放有大约三种方式: 1.使用AnimatorSet的Builder来组合播放 AnimatorSet.Builder...2.使用AnimatorSet的playSequentially API playSequentially(List items):添加一组动画,播放顺序为逐一播放 playSequentially...(Animator… items):添加一组动画,播放顺序为逐一播放 AnimatorSet bouncer = new AnimatorSet(); ObjectAnimator objectAnimatorA...AnimatorSet的palyTogether API playTogether(Collection items):添加一组动画,播放顺序为一起播放 playTogether(Animator…...items):添加一组动画,播放顺序为一起播放 AnimatorSet bouncer = new AnimatorSet(); ObjectAnimator objectAnimatorA = ObjectAnimator.ofFloat

99120

java | 如何让线程顺序执行?

作者:俊俊的小熊饼干 cnblogs.com/wenjunwei/p/10573289.html 一、实现 本文使用了8种方法实现在多线程中让线程顺序运行的方法,涉及到多线程中许多常用的方法,不止为了知道如何让线程顺序运行...package com.wwj.javabase.thread.order; /** * @author wwj * 通过子程序join使线程顺序执行 */ public class ThreadJoinDemo...CyclicBarrier (回环栅栏)实现线程顺序执行 CyclicBarrier(回环栅栏):通过它可以实现让一组线程等待至某个状态之后再全部同时执行。...CyclicBarrier(回环栅栏)实现线程顺序运行 */ public class CyclicBarrierDemo { static CyclicBarrier barrier1...Sephmore(信号量)实现线程顺序运行 */ public class SemaphoreDemo { private static Semaphore semaphore1 = new

6.3K21

(转载非原创)Android系统编程入门系列之界面Activity响应多元的属性动画

在Java中int类型是用4个字节存储的,这4个字节顺序从大端到小端,刚好分别表示Alpha(颜色值中的透明度),Red(颜色值中的红色值),Green(颜色值中的绿色值),Blue(颜色值中的蓝色值...可变化属性值并更新到对象属性的属性动画类 ObjectAnimator作为ValueAnimator的子类,定义和使用方式都有类似的地方,只是ObjectAnimator类中封装了属性动画的更新监听方法...包含多个属性动画集合的属性动画类 SetAnimator是将一系列上述单独的属性动画组合起来的属性动画合集,其使用目的主要是为了讲不同的属性动画按照同一条时间线整理播放,因此其相关方法主要与其中子动画的播放顺序相关...得到的对象调用playTogether(Animator... items)方法可以在同一段时间内播放添加的子动画, 调用playSequentially(Animator... items)方法可以将其中的子动画按照添加顺序播放...在资源文件内根标签为以标记为集合属性动画,该标签内可以设置属性android:ordering,其值只能为默认的together表示子动画同时执行,或者为sequentially表示子动画顺序执行

48430

android 在使用ViewAnimationUtils.createCircularReveal()无法兼容低版本的情况下,另行实现圆形scale动画

如果要在你的程序中使用它,必须要设置最低的 api 版本是 21,往下版本的,在运行程序的时候就会抛出 .createCircularReveal() not found 异常。...在兼容低版本下模仿实现上述效果:       实现思路:            1-》实现圆形,使用 xml 自定义背景,实现圆形,再设置到 view ;            2-》使用传统的 scaleX...", 0, 200); 33 ObjectAnimator revealAnimator1 = ObjectAnimator.ofFloat(//缩放Y 轴的 34...37 set.setInterpolator(new LinearInterpolator());//设置播放模式,这里是平常模式 38...set.playTogether(revealAnimator, revealAnimator1);//设置一起播放 39 set.start(); 40

1.2K50

Android 动画笔记

重复播放、逆向播放 动画集合 可以将一组动画合并成一个集合,然后同时播放或是顺序播放或是延时播放。 帧刷新间隔 默认是 10 ms,可以改成别的值,但最终取决于系统状态。...AnimatorSet:这个类提供了一套机制用于将一组动画合并起来,使得它们能以相互关联的形式播放。 计算器告诉属性动画系统如何计算给定属性的值。...Android 系统让你能通过 AnimatorSet 来将多个动画绑定在一起,以便于能让这些动画同时播放或是顺序播放或是在一定的延时之后播放。...animY = ObjectAnimator.ofFloat(myView, "y", 100f); AnimatorSet animSetXY = new AnimatorSet(); animSetXY.playTogether...下面的例子顺序播放了两组对象动画,前一组动画里同时播放了两个对象动画: <objectAnimator

16820

Android开发之属性动画

通过改变对象的属性以达到动画的效果,API 11以上可以用,如果想兼容旧版本请使用 https://github.com/JakeWharton/NineOldAndroids 。...如何使用?...首先布局和Activity的准备代码和之前一样,即在布局中放置一个ImageView,然后在程序中获取,接下来介绍几种常见动画的使用 1、平移动画 /** * 1.5秒 将图像向Y轴正方向移动...将上述动画集合起来一起放一遍 */ private void aniSet() { AnimatorSet set = new AnimatorSet(); set.playTogether...set.gif 6、颜色渐变动画 这种方式比较坑,试了很多种,上面那些方式行不通,最后想到这个应该是属于任意属性的范畴,所以采用了ValueAnimator,监听动画过程,自己来实现属性的改变,果然成功了

81250

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

---- 使用 ObjectAnimator 实现四种动画 这里我打算通过使用 ObjectAnimator 实现四大动画框架: alpha scaleX/scaleY translateX/translateY...rotation 给大家讲解下 ObjectAnimator 使用 private void iniAnimation(){ // 透明度动画 ObjectAnimator.ofFloat...,实现过程基本可以归纳为 创建 AnimatorSet 对象 设置,变化发生的轴心(部分需要) 设置所需要发生改变的动画(通常在 playTogether() 方法中) 开启动画 最后的运行效果如开头动画所示...同样的,我们可以在一个 playTogether 方法中添加多个动画,这样就能实现多动画组合的效果。...这里就不在赘述了,大家可以自己试试看(我 GIF 图中,右下角的动画,就是旋转 + 透明度) ---- 使用 ValueAnimator 实现属性动画 ValueAnimator 是 ObjectAnimator

1.7K30
领券