Android,如何在开始新活动时禁用“擦除”效果?

时间:2010-07-06 15:41:11

标签: android

在我的应用程序中,如何禁用显示新活动布局从右侧进入并从旧一个出口向左进入的过渡动画?

版本2.0 - > 2.2如果相关。

3 个答案:

答案 0 :(得分:5)

CaseyB响应很好我们可以设置动画

getWindow().setWindowAnimations(int);

但是从Android SDK 2.0开始,您将使用 overridePendingTransition()来更改过渡动画,这是从SplashScreen加载我的应用程序的示例。

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

              new Handler().postDelayed(new Runnable() {
                      @Override
                      public void run() {
                              Intent mainIntent = new Intent(SplashScreen.this,     AndroidNews.class);
                              SplashScreen.this.startActivity(mainIntent);
                              SplashScreen.this.finish();

                              overridePendingTransition(R.anim.mainfadein,
                                      R.anim.splashfadeout);
                      }
              }, 3000);
      }

}

答案 1 :(得分:4)

您可以告诉操作系统您希望使用哪种动画来启动您的活动,或者根本不动画。只需使用:

getWindow().setWindowAnimations(int);

答案 2 :(得分:4)

将此标记添加到您的意图中: android.content.Intent.FLAG_ACTIVITY_NO_ANIMATION

Android文档声明:

  

如果在传递给Context.startActivity()的Intent中设置,则此标志将阻止系统应用活动转换动画以转到下一个活动状态。

顺便说一下:请不要用它来点燃孤儿院:)