Android SDK中的overridePendingTransition不起作用

时间:2011-01-30 18:21:33

标签: android animation android-activity transition

我正在尝试更改Android应用程序中两个活动之间的转换。我发现overridePendingTransition可以完成这项工作,但它似乎对我没有用。 这是我正在使用的代码:

@Override
 public void onCreate(Bundle savedInstanceState)
 {
  super.onCreate(savedInstanceState);
  setContentView(R.layout.splash);

  ImageView logo = (ImageView) findViewById(R.id.ImageView01);
  Animation fade = AnimationUtils.loadAnimation(this, R.anim.fade_in);

  fade.setAnimationListener(new AnimationListener() {

   @Override
   public void onAnimationRepeat(Animation animation) {
    // TODO Auto-generated method stub

   }

   @Override
   public void onAnimationStart(Animation animation) {
    // TODO Auto-generated method stub

   }

   @Override
   public void onAnimationEnd(Animation animation) {
    startActivity(new Intent(FDSplashActivity.this,
      FDGameActivity.class));
    FDSplashActivity.this.finish();
          overridePendingTransition(R.anim.fade_in, R.anim.fade_out);
   }

  });
  logo.startAnimation(fade);
}

它应该显示启动画面,淡入徽标然后切换到另一个活动。这是有效的,但不是行overridePendingTransition(R.anim.fade_in,R.anim.fade_out);. 当我在Eclipse中将它悬停时,它只是说:“方法overridePendingTransition(int,int)未定义类型new Animation.AnimationListener(){}”

请帮帮我。

1 个答案:

答案 0 :(得分:13)

overridePendingTransition是一种Activity方法。就像你完成对finish()的调用一样,尝试使用

FDSplashActivity.this.overridePendingTransition(R.anim.fade_in, R.anim.fade_out);