用AnimatorSet定义动作集 将图片放大5倍再复原接着图片垂直下移到底部再复位执行完后页面跳转到下一个页面
您可以按照以下步骤使用AnimatorSet定义动作集:
-
创建一个AnimatorSet对象来定义动作集:
AnimatorSet animatorSet = new AnimatorSet(); -
创建一个放大动画,使用
ObjectAnimator来设置图片的缩放动画:ObjectAnimator scaleX = ObjectAnimator.ofFloat(imageView, "scaleX", 5f);和ObjectAnimator scaleY = ObjectAnimator.ofFloat(imageView, "scaleY", 5f); -
设置放大动画的持续时间:
scaleX.setDuration(1000);和scaleY.setDuration(1000); -
创建一个复原动画,使用
ObjectAnimator来设置图片的缩放动画:ObjectAnimator scaleXBack = ObjectAnimator.ofFloat(imageView, "scaleX", 1f);和ObjectAnimator scaleYBack = ObjectAnimator.ofFloat(imageView, "scaleY", 1f); -
设置复原动画的持续时间:
scaleXBack.setDuration(1000);和scaleYBack.setDuration(1000); -
创建一个垂直移动动画,使用
ObjectAnimator来设置图片的垂直移动动画:ObjectAnimator translateY = ObjectAnimator.ofFloat(imageView, "translationY", 0f, 500f); -
设置垂直移动动画的持续时间:
translateY.setDuration(1000); -
创建一个复位动画,使用
ObjectAnimator来设置图片的垂直移动动画:ObjectAnimator translateYBack = ObjectAnimator.ofFloat(imageView, "translationY", 500f, 0f); -
设置复位动画的持续时间:
translateYBack.setDuration(1000); -
将放大和复原动画添加到动作集中:
animatorSet.play(scaleX).with(scaleY).before(scaleXBack).before(scaleYBack); -
将垂直移动和复位动画添加到动作集中:
animatorSet.play(translateY).before(translateYBack); -
设置动作集的结束监听器,在动画结束后执行页面跳转操作:
animatorSet.addListener(new AnimatorListenerAdapter() { @Override public void onAnimationEnd(Animator animation) { // 执行页面跳转操作 } }); -
执行动作集:
animatorSet.start();
请注意,上述代码中的imageView是指需要进行动画操作的图片视图对象。您需要将其替换为您实际使用的图片视图对象。另外,您还需要根据您的实际需求调整动画的持续时间和跳转操作的代码。
原文地址: https://www.cveoy.top/t/topic/jgR3 著作权归作者所有。请勿转载和采集!