0

我的 anim/ 文件夹中有两个动画。一个是一个镜头,另一个是循环。

我正在尝试在单发完成后播放循环。

我尝试使用 AnimationSet,但我做错了。

AnimationSet as = new AnimationSet(true);
Animation AnimFirst = AnimationUtils.loadAnimation(null, R.anim.oneshot);
Animation AnimSecond = AnimationUtils.loadAnimation(null, R.anim.loop);
as.addAnimation(AnimFirst);
as.addAnimation(AnimSecond);

ImageView image1 = (ImageView) findViewById(R.id.image1);
image1.startAnimation(as);
4

1 回答 1

2

AnimationListener一旦第一个动画完成,我会去运行你的第二个动画。就像是。-

Animation animFirst = AnimationUtils.loadAnimation(null, R.anim.oneshot);
Animation animSecond = AnimationUtils.loadAnimation(null, R.anim.loop);

final ImageView image1 = (ImageView) findViewById(R.id.image1);

animFirst.setAnimationListener(new Animation.AnimationListener() {
    @Override
    public void onAnimationStart(Animation animation) {
    }

    @Override
    public void onAnimationRepeat(Animation animation) {
    }

    @Override
    public void onAnimationEnd(Animation animation) {
        image1.startAnimation(animSecond);
    }
});

image1.startAnimation(animFirst);

这样,您就不需要AnimationSet,它应该同时播放一组动画而不是按顺序播放。

于 2013-09-10T23:04:05.683 回答