如何在逐帧动画结束后转到另一个活动

时间:2013-05-21 14:24:19

标签: android android-animation

动画结束后如何开始活动。我在xml中添加了android:oneshot =“true”但是在这个动画停止后如何开始一个新的活动。我已经附加了下面的整个代码。请让我知道如何开始新活动。如果我使用此代码而不显示我的动画,则会转到另一个活动。

public class MainActivity extends Activity  {

ImageView iv;
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);

}
public void onWindowFocusChanged (boolean hasFocus) {
     super.onWindowFocusChanged(hasFocus);
        AnimationDrawable animation = (AnimationDrawable) iv.getBackground();

        if(hasFocus) {          
            animation.start();
                startActivity(new Intent(MainActivity.this,second.class));

        } else {
            animation.stop();

        }

    }
public void onStart() {
    {
        super.onStart();

        iv = (ImageView)findViewById(R.id.imageView1);
        iv.setBackgroundResource(R.animator.animation);

    }
}

}

1 个答案:

答案 0 :(得分:1)

确保您可以使用onAnimationListener的一种方法,并且真正对实现侦听器接口的onAnimationEnd方法感兴趣。

这样的事情:

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

                }

                @Override
                public void onAnimationEnd(Animation animation) {
                startActivity(new Intent(MainActivity.this,second.class));
                }

                @Override
                public void onAnimationRepeat(Animation animation) {

                }
            });