【问题标题】:overridePendingTransition in Android SDK doesn't workAndroid SDK 中的 overridePendingTransition 不起作用
【发布时间】:2011-06-18 04:40:16
【问题描述】:

我正在尝试更改 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 中时,它只是说:“对于类型 new Animation.AnimationListener(){},方法 overridePendingTransition(int, int) 未定义”

请帮帮我。

【问题讨论】:

    标签: android animation android-activity transition


    【解决方案1】:

    overridePendingTransition 是 Activity 的一个方法。就像您对完成()的调用所做的那样,尝试使用

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

    【讨论】:

    • 啊,好的,谢谢。但是我用你的替换了这条线,我仍然在 overridePendingTransition 这个词下看到一条红线。我究竟做错了什么?我是否使用了错误的 SDK 版本?
    • 我是。 Eclipse 已自动选择 Android 1.6 作为项目构建目标。但改为 2.1 后,现在效果很好。谢谢大佬!
    • 在片段内,像getActivity().overridePendingTransition(R.anim.slide_in_left, R.anim.slide_out_right);一样使用
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2014-08-19
    • 2012-07-07
    • 1970-01-01
    • 1970-01-01
    • 2022-12-23
    • 2011-06-05
    相关资源
    最近更新 更多