在Android中,可以使用AnimatorSet类来同时执行多个动画。
以下是一个示例代码,展示了如何使用AnimatorSet来同时执行多个视图动画:
import android.animation.AnimatorSet;
import android.animation.ObjectAnimator;
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.view.View;
import android.widget.Button;
public class MainActivity extends AppCompatActivity {
private Button button1;
private Button button2;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
button1 = findViewById(R.id.button1);
button2 = findViewById(R.id.button2);
// 创建两个动画
ObjectAnimator scaleXAnimator = ObjectAnimator.ofFloat(button1, "scaleX", 1f, 2f);
ObjectAnimator scaleYAnimator = ObjectAnimator.ofFloat(button1, "scaleY", 1f, 2f);
// 设置动画的持续时间
scaleXAnimator.setDuration(1000);
scaleYAnimator.setDuration(1000);
// 创建AnimatorSet对象来管理动画
AnimatorSet animatorSet = new AnimatorSet();
// 将两个动画添加到AnimatorSet中
animatorSet.playTogether(scaleXAnimator, scaleYAnimator);
// 启动动画
animatorSet.start();
}
}
以上代码中,我们创建了两个缩放动画,并将它们添加到AnimatorSet中,然后调用start()方法来启动动画。这样,两个动画就会同时开始执行。
请注意,AnimatorSet还提供了其他方法,例如playSequentially()用于按顺序执行动画,playWithAfter()用于在一个动画之后执行另一个动画等。您可以根据需要使用这些方法来控制动画的执行顺序和逻辑。
希望这个示例能帮助您解决Android视图动画多个动画并行执行的问题。
上一篇:Android视图的源代码类